这里写自定义目录标题
1. 子传父值通过prop传函数this指向问题
- 子传父有自定义函数与prop传函数的方法, 而prop传函数在app在微信小程序中this指向不同,
使用prop传递函数,来达到子传父的目的
- 在app中,this是指向函数所在组件, 即指向父
- 而在微信小程序中,是指向调用函数的组件, 即指向子
使用自定义事件,app与微信小程序中一致, 推荐自定义事件
2. refs问题
- 非h5端, 只能通过ref获取自定义组件, 内置组件获取不到
3. 关于input框手动聚焦问题
- focus属性设为动态
- @focus获取焦点值为true
- 失去焦点值为false
4.uniapp编译到微信小程序仅支持结构插槽
//报错提示
Errors compiling template: 目前仅支持解构插槽 scoped,如 v-slot="{ user }"
//错误代码 v-slot:sex="scoped" 在h5正常使用, 在微信小程序编译错误
<template v-slot:sex="scoped" v-if="item.type === 'slot' && item.prop == 'sex'">
5. 微信小程序不支持v-bind写法
//报错提示
Error: 暂不支持 v-bind="" 用法
//错误代码 v-bind="formItem.formItemConfig"
<u-form-item
:label="formItem.label"
:prop="formItem.prop"
borderBottom
v-bind="formItem.formItemConfig"
class="fromItem"
@click="formItemClick(formItem.type)"
>
6. 关于微信小程序使用字体图标报错问题
在iconfont.css中使用绝对路径引入其他字体文件
//例如
@font-face {
font-family: "iconfont";
src: url('~@/static/iconfont.ttf?t=1688570457106') format('truetype'); //引入ttf文件用~@引入路径
}
.iconfont {
font-family: "iconfont" !important;
font-size: 16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.icon-xinxi:before {
content: "\e763";
}
.icon-sousuo:before {
content: "\eafe";
}
7.scroll-view 编译到小程序无法下拉刷新问题
动态高度的问题, 解决:使用v-if判断height, 有了再显示
8.u-input 禁用后点击不触发click事件
- 把事件委托给父组件加tap
- 给u-input加pointer-events: none;
<view @tap="openSelect">
<u-input:disabled="true"style="pointer-events: none;" />
</view>