复制代码<template>
<view class="content">
<view class="form">
<view><text>姓名</text><input v-model="form.name" /></view>
<view><text>性别</text><input v-model="form.sex" /></view>
<button @click="submit">提交</button>
</view>
<view class="list" v-for="(item, i) in list" :kes="i">
<view>{{item.name}}</view>
<view>{{item.sex}}</view>
<view>
<button class="btn" type="primary" @click="remove(item._id)">删除</button>
<button class="btn" type="default" @click="update(item._id)">更新</button>
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
form: {
name: '',
sex: ''
},
list: {}
}
},
onLoad() {
this.getData()
},
methods: {
submit() {
console.log(JSON.stringify(this.form))
return
uniCloud.callFunction({
name: 'addUser',
data: this.form,
success: (e) => {
console.log(e.result)
this.getData()
}
})
},
getData() {
uniCloud.callFunction({
name: 'getUser',
success: (e) => {
console.log(e.result)
this.list = e.result.data
}
})
},
remove(id) {
uniCloud.callFunction({
name: 'remove',
data: {
'id': id
},
success: (e) => {
console.log(e.result)
this.getData()
}
})
},
update(id) {
let data = {
'id': id,
'name': this.form.name,
'sex': this.form.sex
}
uniCloud.callFunction({
name: 'update',
data: data,
success: (e) => {
console.log(e.result)
this.getData()
}
})
}
}
}
</script>
<style lang="scss" scoped>
input {
border: 1px solid #666;
}
.list {
display: flex;
justify-content: space-between;
align-items: center;
}
.btn {
width: 100px;
display: inline-block;
}
</style>
- 发布:2021-01-21 13:52
- 更新:2021-02-03 16:57
- 阅读:1604
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: 10
HBuilderX类型: Alpha
HBuilderX版本号: 3.0.7
手机系统: Android
手机系统版本号: Android 10
手机厂商: OPPO
手机机型: PBCM30
页面类型: vue
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
上面代码,输入框输入,不失焦直接点击提交
上面代码,输入框输入,不失焦直接点击提交
预期结果:
返回输入完整的数据
返回输入完整的数据
实际结果:
没有实时获取input数据
没有实时获取input数据
bug描述:
在vue页面input数据绑定v-model,在输入框输入在没有失焦的情况下,点击提交,没有失焦的input绑定参数没有获取到输入后的值
在nvue和h5测试,都正确返回input实时数据,用手机运行不行
最佳回复
未复现问题。仅这个设备出现问题吗?其他设备是否正常?
-
狗尾草joss (作者)
回复 DCloud_UNI_Anne: 我下面都录视频了,你们还要复现到什么程度;我想可能的原因:在输入法中文状态下是能监听到的,在英文状态下,输入的时候,输入框输入的英文下面有一条线,此时输入框没有监听到输入,然后点击提交,提交和失焦(英文字符被写入input)同时发生
2021-01-25 09:07
-
狗尾草joss (作者)
回复 DCloud_UNI_Anne: 刚在苹果测试也是一样,测试必现步骤:在输入框输入,输入框的文字存在下划线,说明此时还没有被输入进去,点击提交,输入的文字显示在输入框,然后打印出来的数据没有刚输入的东西
2021-01-26 17:46
狗尾草joss (作者)
复制代码<template>
<view class="content">
<view class="form">
<view><text>姓名</text><input v-model="form.name" /></view>
<view><text>性别</text><input v-model="form.sex" /></view>
<button @click="submit">提交</button>
</view>
</view>
</template>
<script>
export default {
data() {
return {
form: {
name: '',
sex: ''
},
list: {}
}
},
onLoad() {
},
methods: {
submit() {
console.log(JSON.stringify(this.form))
uni.showModal({
title: '提示',
content: JSON.stringify(this.form),
success: function (res) {
}
});
}
}
}
</script>
狗尾草joss (作者)
嗯,我知道解决方案,就是想问问这个是不是BUG,如果是会不会修改
2021-01-26 18:09
DCloud_UNI_GSQ
回复 狗尾草joss: 确认为 bug,后续会优化
2021-01-27 14:19
w***@163.com
回复 DCloud_UNI_GSQ: 升级到最新版,依然存在这个问题,
2021-08-27 23:27