vuejs2.0子组件改变父组件的数据实例
发布时间 - 2026-01-11 01:04:00 点击率:次在vue2.0之后的版本中,不允许子组件直接改变父组件的数据,在1.0的版本中可以这样操作的,但是往往项目需求需要改变父组件的数据,2.0也是可一个,区别是,当我们把父元素的数据给子组件时,需要传一个对象,子组件通过访问对象中的属性操作数据,下面是演示
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript" src="vue.js"></script>
<script type="text/javascript">
window.onload = function(){
var app = new Vue({
el:'#box',
data:{
myData:{
info:'父组件信息'
}
},
components:{
'v-com':{
props:['data'],
template:'#tpl',
methods:{
change(){
this.data.info = 'change info'
}
}
}
}
})
}
</script>
</head>
<body>
<!-- 子组件改变父组件的数据 -->
<div id="box">
<div>
<p>{{myData.info}}</p>
<v-com :data ="myData"></v-com>
</div>
</div>
<!-- 模板 -->
<template id="tpl">
<div>
<button @click="change">change</button>
<p>{{data.info}}</p>
</div>
</template>
</body>
</html>
这种是同步改变数据,就是说子组件的数据改变,父组件数据也跟着改变,下面展示非同步的情况
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript" src="vue.js"></script>
<script type="text/javascript">
window.onload = function(){
var app = new Vue({
el:'#box',
data:{
myData:'父组件信息'
},
components:{
'v-com':{
data() {
return {
childData:''
}
},
props:['data'],
// dom渲染完毕
mounted(){
this.childData = this.data
},
template:'#tpl',
methods:{
change(){
this.childData = 'change info'
}
}
}
}
})
}
</script>
</head>
<body>
<!-- 子组件改变父组件的数据,不同步 -->
<div id="box">
<div>
<p>{{myData}}</p>
<v-com :data ="myData"></v-com>
</div>
</div>
<!-- 模板 -->
<template id="tpl">
<div>
<button @click="change">change</button>
<p>{{childData}}</p>
</div>
</template>
</body>
</html>
这里巧妙的通过mounted这个方法进行了中转,实现了想要的效果
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# vue
# 改变组件数据
# 改变父组件的值
# vue子组件改变父组件
# 解决Vue.js父组件$on无法监听子组件$emit触发事件的问题
# VUEJS 2.0 子组件访问/调用父组件的实例
# Vuejs 2.0 子组件访问/调用父组件的方法(示例代码)
# vue.js中父组件调用子组件的内部方法示例
# 详解vue.js2.0父组件点击触发子组件方法
# vue.js父组件使用外部对象的方法示例
# 基于JS实现父组件的请求服务过程解析
# 当我们
# 大家多多
# 进行了
# 象中
# 实现了
# title
# Document
# UTF
# head
# meta
# charset
# javascript
# src
# script
# type
# text
# en
# pre
# class
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试
北京的网站制作公司有哪些,哪个视频网站最好?
如何快速查询网址的建站时间与历史轨迹?
Laravel怎么连接多个数据库_Laravel多数据库连接配置
详解Nginx + Tomcat 反向代理 负载均衡 集群 部署指南
如何在局域网内绑定自建网站域名?
JS中页面与页面之间超链接跳转中文乱码问题的解决办法
HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】
Laravel模型事件有哪些_Laravel Model Event生命周期详解
海南网站制作公司有哪些,海口网是哪家的?
如何快速上传建站程序避免常见错误?
Laravel如何使用Eloquent ORM进行数据库操作?(CRUD示例)
如何为不同团队 ID 动态生成多个独立按钮
如何在云虚拟主机上快速搭建个人网站?
详解阿里云nginx服务器多站点的配置
专业商城网站制作公司有哪些,pi商城官网是哪个?
Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程
香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧
如何登录建站主机?访问步骤全解析
如何实现javascript表单验证_正则表达式有哪些实用技巧
Laravel怎么配置.env环境变量_Laravel生产环境敏感数据保护与读取【方法】
Laravel如何实现多级无限分类_Laravel递归模型关联与树状数据输出【方法】
阿里云高弹*务器配置方案|支持分布式架构与多节点部署
英语简历制作免费网站推荐,如何将简历翻译成英文?
Laravel怎么进行数据库回滚_Laravel Migration数据库版本控制与回滚操作
详解Android图表 MPAndroidChart折线图
Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】
UC浏览器如何设置启动页 UC浏览器启动页设置方法
html如何与html链接_实现多个HTML页面互相链接【互相】
Laravel如何配置任务调度?(Cron Job示例)
儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?
潮流网站制作头像软件下载,适合母子的网名有哪些?
JS去除重复并统计数量的实现方法
EditPlus中的正则表达式实战(6)
Laravel如何使用Blade组件和插槽?(Component代码示例)
微信小程序 配置文件详细介绍
如何撰写建站申请书?关键要点有哪些?
Laravel如何实现全文搜索功能?(Scout和Algolia示例)
如何在IIS中新建站点并配置端口与物理路径?
如何在阿里云ECS服务器部署织梦CMS网站?
公司网站制作需要多少钱,找人做公司网站需要多少钱?
Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能
如何获取PHP WAP自助建站系统源码?
C++时间戳转换成日期时间的步骤和示例代码
悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
Android自定义控件实现温度旋转按钮效果
高防服务器租用首荐平台,企业级优惠套餐快速部署
Laravel如何配置中间件Middleware_Laravel自定义中间件拦截请求与权限校验【步骤】
Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程

