var props = defineProps({
title: {
type: String,
default: 'kaooo',
required: false
},
age: {
type: Number,
default: 11
}
})
- 发布:2022-07-13 08:54
- 更新:2022-07-13 10:41
- 阅读:341
产品分类: uniapp/小程序/微信
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: 12.4 (21F79)
HBuilderX类型: 正式
HBuilderX版本号: 3.4.18
第三方开发者工具版本号: 1.06.2206271
基础库版本号: 2.25.0
项目创建方式: HBuilderX
示例代码:
操作步骤:
在 index
页面中使用 <script setup>
defineProps
方式创建props
并给上默认值, 然后.分别在浏览器和微信小程序开发工具里查看页面的显示效果
在 index
页面中使用 <script setup>
defineProps
方式创建props
并给上默认值, 然后.分别在浏览器和微信小程序开发工具里查看页面的显示效果
预期结果:
H5与微信小程序显示一至
H5与微信小程序显示一至
实际结果:
H5中没有正确的显示props的默认值
微信小程序中正确的显示了props的默认值
H5中没有正确的显示props的默认值
微信小程序中正确的显示了props的默认值
e***@126.com (作者)
我个人的猜测:
子控件中的defineProps中的默认值, 可以正常显示在页面Page中.
而做为上层的Page中的defineProps默认值却没有被显示出来. 可能是因为它是顶层的组件, 没有被触发mount(这里的顶层组件, 和mount都是描述意思. 我并不懂里面的具体实现. )所以没有调用 defineProps 这个方法. (描述个意思, 纯猜测)
希望能帮助找到这个bug的解决方法.
e***@126.com (作者)
感谢回复, 使用 ref 是为了做数据的绑定, 如果不使用 props 里面得到的值只是普通的值, 不具备数据绑定的效果.
另外. 我按你说的. 将ref的变量换成了其它名字, 在web端. 还是不能正确的显示 defineProps中的默认值 .
这个问题的重点是. 同样的代码 . 在Web端和微信小程序中的显示效果不一至
2022-07-13 10:35