1***@qq.com
1***@qq.com
  • 发布:2019-05-23 10:56
  • 更新:2020-06-16 17:52
  • 阅读:1384

非自定义组件模式下给自定义的组件添加v-model可以用,自定义组件模式下只有H5能用

分类:uni-app

问题已解决
额,,我今天用了官方的登陆模板发现可以,然后又去改了我的代码,,,发现命名改了就可以了。。。
原本是::model: {prop: "enter",event: "out"},
后来是::model: {prop: "value",event: "input"}, //这个就可以用了

详细问题描述

非自定义组件模式下给自定义的组件添加v-model可以用,自定义组件模式下只有H5能用app和小程序用不了

[内容]
<view>
<view>值:{{settlement_amount}}</view>
<view>v-model版本(只有H5可用)<clear-btn-input type="number" name="settlement_amount" v-model="settlement_amount" placeholder="请输入金额"></clear-btn-input></view>
<view>硬写版本(只有小程序和app可用):<clear-btn-input type="number" :enter="settlement_amount" @out="val => { settlement_amount = val }" value="some value" placeholder="请输入金额2"> </clear-btn-input></view>
</view>

IDE运行环境说明

[HBuilderX1.9.8]

uni-app运行环境说明

[运行端是h5和app和小程序]
[编译模式是新的自定义组件模式?]

附件

[App安装包或H5地址]

[可重现代码片段]
运行的首页就是了

联系方式

[QQ] 1951844956

2019-05-23 10:56 负责人:无 分享
已邀请:
hhyang

hhyang - 如有问题,请添加QQ1606726660 备注付费咨询

不知道写的啥玩意

  • 1***@qq.com (作者)

    如果你是表达不清楚的话:简单来说就是第一种写法在网页端可以完美运行,第二种写法在app和小程序可以完美运行。

    如果是js的话。。。总共就两个文件而已。。。一个是页面一个是组件。。。


    2019-05-23 14:03

  • 1***@qq.com (作者)

    额,,我今天用了官方的登陆模板发现可以,然后又去改了我的代码,,,发现命名改了就可以了。。。

    原本是::model: {prop: "enter",event: "out"},

    后来是::model: {prop: "value",event: "input"}, //这个就可以用了


    2019-06-03 18:26

碧霜寒冰

碧霜寒冰

两种方式都是可以的,两个输入框输入都能够直接更改值的地方的显示

  • 1***@qq.com (作者)

    在自定义组件模式下 ‘v-model’ 是不行的,,,


    2019-05-23 14:14

  • 碧霜寒冰

    回复 1***@qq.com: 就是自定义组件


    2019-05-23 14:16

  • 碧霜寒冰

    你给的demo,测试在小程序测试过,是正常的


    2019-05-23 14:16

  • 1***@qq.com (作者)

    回复 碧霜寒冰: 这。。。我的为什么不行啊~~


    2019-05-23 14:32

  • 碧霜寒冰

    回复 1***@qq.com: 今天刚升的1.9.9版本?微信7.0.4 基础库2.7.0,别的小程序我没测。


    2019-05-23 14:38

  • 1***@qq.com (作者)

    回复 碧霜寒冰: 我现在hbuilderx和微信都是最新版本。。。


    2019-05-23 14:39

  • 1***@qq.com (作者)

    回复 碧霜寒冰: 我现在把两种写法都写在同一组件,是可以用了。。。


    2019-05-23 14:43

  • 1***@qq.com (作者)

    回复 碧霜寒冰: 额,,我今天用了官方的登陆模板发现可以,然后又去改了我的代码,,,发现命名改了就可以了。。。

    原本是::model: {prop: "enter",event: "out"},

    后来是::model: {prop: "value",event: "input"}, //这个就可以用了


    2019-06-03 18:26

桂丽莎白

桂丽莎白 - 90后

v-model 默认会利用名为 value 的 prop 和名为 input 的事件; 第二种你不写model: {prop: "value",event: "input"}, 照样能用value跟$emit('input', data) 派发事件

该问题目前已经被锁定, 无法添加新回复