![2***@qq.com](http://img-cdn-tc.dcloud.net.cn/uploads/avatar/000/98/14/69_avatar_mid.jpg?v=0)
- 发布:2023-06-27 11:53
- 更新:2024-09-02 10:02
- 阅读:362
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: 22621.1702
HBuilderX类型: 正式
HBuilderX版本号: 3.8.4
手机系统: 全部
手机厂商: 苹果
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
测试过的手机:
示例代码:
<script>
// uniapp中必须用显式导入 否则识别不了组件 component动态字符串不支持easycom也不能用require来导入
import Game from '@/services/game/Base';
import Sort from '@/components/game/Sort';
const cmp = {
Sort
};
export default {
//支持
components: {
Sort
},
//不支持
components:cmp
}
</script>
<template>
<div v-if="service">
<template v-for="item in pipe">
<Component v-if="current === item.no" :is="item.body" :context="expose" :localState="localState" @result="result"></Component>
</template>
</div>
</template>
<script>
// uniapp中必须用显式导入 否则识别不了组件 component动态字符串不支持easycom也不能用require来导入
import Game from '@/services/game/Base';
import Sort from '@/components/game/Sort';
const cmp = {
Sort
};
export default {
//支持
components: {
Sort
},
//不支持
components:cmp
}
</script>
<template>
<div v-if="service">
<template v-for="item in pipe">
<Component v-if="current === item.no" :is="item.body" :context="expose" :localState="localState" @result="result"></Component>
</template>
</div>
</template>
操作步骤:
1、在当前页import引入一个组件,把这个组件对象声明在一个对象里,把这个对象赋值给components
1、在当前页import引入一个组件,把这个组件对象声明在一个对象里,把这个对象赋值给components
预期结果:
1
1
实际结果:
1
1
bug描述:
1、component动态组件支持字符串,但是不完全支持easycom的组件名称,如果初始化是v-if包裹的(使用动态组件的easycom组件)那么该组件并不会被打包,等v-if=true的时候会出现空白的情况,如果没有v-if就正常。
2、组件引入只能用import 不支持require().default
3、必须在用component动态组件的页面显式import引入组件,不能先声明对象然后赋值到components对象上,否则貌似会被treeshaking忽略掉
![Diligent_UI](http://img-cdn-tc.dcloud.net.cn/uploads/avatar/001/28/02/43_avatar_mid.jpg?v=1721956781)
Diligent_UI - 【插件开发】【专治疑难杂症】【多款插件已上架:https://ext.dcloud.net.cn/publisher?id=193663(微信搜索飘逸科技UI小程序直接体验)】【骗子请绕道】问题咨询请加QQ群:120594820,代表作灵感实用工具小程序
is和v-if选择一个进行使用吧
2***@qq.com (作者)
里面的Component可以用computed处理不加v-if, 但最外层需要v-if 。因为后面Component可能会加兄弟元素 所以最外层的if不能省略掉 如果单独把component提取到v-if之外,那么布局就会出现问题
2023-07-01 19:06