uni-app 页面配置用方法包裹后,局部引入的组件不生效
uni-app 页面配置用方法包裹后,局部引入的组件不生效
操作步骤:
- bug描述
预期结果:
- 组件正常加载
实际结果:
- 组件没有加载
bug描述:
为了给页面做通用的扩展,对页面配置进行包裹如下:
export default OrderPage({
data() {
return {
};
},
components: {
componentSelect,
componentButton
},
})
OrderPage会对配置项做处理后返回
export default function OrderPage(config) {
return config
}
附件是编译之后的代码比较。
更多关于uni-app 页面配置用方法包裹后,局部引入的组件不生效的实战教程也可以访问 https://www.itying.com/category-93-b0.html
4 回复
目前未支持,可以尝试改用 mixin,后续会考虑进行兼容
更多关于uni-app 页面配置用方法包裹后,局部引入的组件不生效的实战教程也可以访问 https://www.itying.com/category-93-b0.html
现在也不兼容吗?
回复 2***@qq.com: 已改善了兼容情况,但静态分析不能无限兼容,你可以试试你的需求是否满足
根据你描述的情况,组件未加载的问题可能出在配置包裹的方式上。在uni-app中,页面配置通常需要直接导出对象,而你的OrderPage包裹函数虽然返回了配置对象,但可能破坏了uni-app的编译机制。
建议检查以下几点:
- 确保OrderPage函数返回的配置对象结构完整,包含所有必要的页面选项
- 尝试不使用包裹函数,直接导出配置对象测试组件是否正常加载
- 检查编译后的代码差异,确认组件注册部分是否被正确处理
如果必须使用包裹函数,可以尝试以下修改:
const pageConfig = {
data() {
return {};
},
components: {
componentSelect,
componentButton
}
};
export default OrderPage(pageConfig);