当前位置: 首页 > news >正文

烟台企业网站建设用公司网站后缀做邮箱

烟台企业网站建设,用公司网站后缀做邮箱,网页设计类网站,微信小程序 网站开发uniapp 微信小程序:v-model双向绑定问题(自定义 props 名无效) 前言问题双向绑定示例使用 v-model使用 v-bind v-on使用 sync 修饰符 参考资料 前言 VUE中父子组件传递数据的基本套路: 父传子 props子传父 this.$emit(事件名, …

uniapp 微信小程序:v-model双向绑定问题(自定义 props 名无效)

  • 前言
  • 问题
  • 双向绑定示例
    • 使用 v-model
    • 使用 v-bind + v-on
    • 使用 sync 修饰符
  • 参考资料

前言

VUE中父子组件传递数据的基本套路:

  1. 父传子 props
  2. 子传父 this.$emit('事件名', '数据');
  3. 使用 sync 修饰符,实现支持同步数据

问题

在这里插入图片描述 在这里插入图片描述
因为用的是 uniapp 开发小程序,所以要考虑到兼容性问题,不要把自己当正经VUE2。
小程序虽然支持 v-model 指令,但不支持 model 选项。
所以要么子组件中声明默认的 value 这个 props 来接收值。
要么手动:绑定属性事件

双向绑定示例

使用 v-model

由于小程序不支持 model 选项。
这个方案中:子组件里只能使用 value 接收数据,更新时触发 input

  • 父组件
<template><view><view><text>父组件:{{ msg }}</text></view><vmodel-component v-model="msg"></vmodel-component></view>
</template><script>export default {data() {return { msg: '大家好,我是:使用 v-model' }},methods: {}}
</script><style>
</style>
  • 子组件
<template><view> <view> 子组件:{{value}}  </view><button @click="onclick" >更新</button></view>
</template><script>export default {data() {return {};},props:{value:{ type: String, default: "未收到父值" }},methods:{onclick(e){this.$emit('input', '我是笨笨'); // v-mode }}}
</script><style>
</style>

使用 v-bind + v-on

当然一般都会用简写形式:
v-bind:缩写为 :
v-on:缩写为 @

由于是自己手绑定,props事件名都可以自己定。
比如在子组件中我就用 msg 接收数据。
事件我自己取名叫 customEvent

<template><view><view><text>父组件:{{ msg }}</text></view><novmodel-component :msg="msg" @customEvent="e => msg = e"></novmodel-component><!-- <novmodel-component :msg="msg" @input=" msg = $event "></novmodel-component> --></view>
</template><script>export default {data() {return { msg: '大家好,我是:不使用 v-model' }},methods: {}}
</script><style>
</style>
  • 子组件
<template><view> <view> 子组件:{{msg}}  </view><button @click="this.$emit('customEvent', '我是笨笨')" >更新</button></view>
</template><script>export default {data() {return {};},props:{msg:{ type: String, default: "未收到父值" }},methods:{}}
</script><style>
</style>

使用 sync 修饰符

使用 sync 时可以自己决定绑到子组件的哪个 props 上,比如就绑到了 msg 上。
同步数据时触发 update:要更新的props

  • 父组件
<template><view><view><text>父组件:{{ msg }}</text></view><sync-component :msg.sync="msg"></sync-component></view>
</template><script>export default {data() {return { msg: '大家好,我是:使用 sync 修饰符,实现同步数据' }},methods: {}}
</script><style>
</style>
  • 子组件
<template><view> <view> 子组件:{{msg}}  </view><button @click="$emit('update:msg', '我是笨笨')" >更新</button></view>
</template><script>export default {data() {return {};},props: {msg: { type: String, default: "未收到父值" }},methods:{}}
</script><style>
</style>

参考资料

uniapp官方文档 :模板指令 v-model
uniapp官方文档 :.sync 修饰符

vue2官方文档:选项 model

http://www.yayakq.cn/news/794091/

相关文章:

  • 网站rp原型图怎么做买个购物网站
  • 酷站 房地产的网站设计参 案例男生做污污的网站
  • 创建小型网站的步骤东莞网络营销网络推广系统
  • 阜阳网站开发泰安网站seo
  • 南昌专业的学校网站建设公司会泽住房和城乡建设局网站
  • 上林住房和城乡建设网站网站关键词怎样优化
  • 做网站推广送什么南宁市住房和城乡建设局
  • 哪些平台可以建立网站吗网站域名解析登陆
  • 广告公司做网站郑州模板网站建设
  • pc端网站开发技术受欢迎的徐州网站建设
  • cms仿站宝安建设工程交易服务网
  • 网站建设不完整(网站内容太少)wordpress 网址优化
  • 定制网站开发商业计划书专业网站建设案例
  • 买个网站需要多少钱付费 视频 网站 怎么做
  • 顺德做营销网站公司个人建设图片分享网站
  • 建设商务公司网站网站建设属于哪个税目
  • 门户网站界面设计模板下载做外贸哪些国外网站可以推广
  • 中国建设集团门户网站安徽网站建设电话
  • 做字体网站卖货平台排名前十
  • 做网站用哪个服务器棋牌类网站开发
  • 本溪市城乡住房建设厅网站网站做链接的意义是什么意思
  • 网站关键词选择石家庄网站建设多少钱
  • 美食网站建设的背景和目的韩国美食做视频网站有哪些
  • 电商网站建设公司排名动画设计怎么自学
  • 企业网站建设 总结设计师网上哪里接单
  • 做公司网站找谁微商城网站策划
  • 海南省建设网站在线免费做网站
  • 成都建工网站网站域名 过期
  • 电子商务网站建设html济南个人制作网站
  • 长春网站建设SEO优化营销站长网站大全