DCloud_heavensoft
DCloud_heavensoft
  • 发布:2019-09-16 20:44
  • 更新:2020-03-19 02:55
  • 阅读:30839

公告:uni-app将于2019年11月1日起停止支持非自定义组件模式

分类:uni-app

公告:uni-app将于2019年11月1日起停止支持非自定义组件模式

非自定义组件作为一种被淘汰的技术,为了向下兼容,一直保留在uni-app的核心代码中。

目前uni-app的编译模式过多:有非自定义组件模式、自定义组件模式;有nvue、有vue;nvue有weex编译模式、有uni-app编译模式;还支持纯nvue编译模式。

太多历史兼容,导致编译器复杂度太高,代码冗余很多。

目前在App、微信小程序、百度小程序、支付宝小程序、头条小程序上,仍然有部分开发者一直未升级到自定义组件模式。请开发者快速升级。

uni-app将于2019年11月1日起停止支持非自定义组件模式,届时,新版HBuilderX真机运行和云打包,都不再支持非自定义组件模式。HBuilderX的云打包,只向下保留2个版本。再升级1个版本后,老版打包机也不再支持非自定义组件模式。

升级自定义组件模式,开发者将得到更好的应用性能、更便利的调试体验。

升级方式

在manifest.json可配置编译模式。

  • 方式1. 可视化界面
    在App、微信、百度、支付宝、头条小程序配置界面,勾上自定义组件编译模式

  • 方式2. 源码视图
    如下:
    {  
    "name" : "",  
    "appid" : "",  
    "app-plus" : {  
        "usingComponents" : true  
    },  
    "mp-weixin" : {  
        "appid" : "",  
        "usingComponents" : true  
    },  
    "mp-alipay" : {  
        "usingComponents" : true  
    },  
    "mp-baidu" : {  
        "usingComponents" : true  
    },  
    "mp-toutiao" : {  
        "usingComponents" : true  
    }  
    }

升级后,如代码运行异常,参考下文调整

https://ask.dcloud.net.cn/article/35851

如果你不知道自己是什么编译模式,通过以下方式查看:
打开manifest源码视图里,看每个平台下是否有 "usingComponents" : true。
如果值为true就是自定义组件模式。
如果值为false或没有该键名则为非自定义组件模式。

在HBuilderX 1.9.0.20190412以后新建的项目,默认都会添加自定义组件模式标记,之前的版本新建的项目,默认都是非自定义组件的。

0 关注 分享

该文章目前已经被锁定, 无法添加新评论

迪丽热bug

迪丽热bug

回复 大钱mr :
同问
2019-09-27 10:33
DCloud_heavensoft

DCloud_heavensoft (作者)

回复 桃子先生 :
可以
2019-09-26 06:23
大钱mr

大钱mr

非自定义组件是什么
2019-09-25 18:10
桃子先生

桃子先生

请问大佬,到2019年11月1日,不升级工具,还可以用非自定义组件模式编译小程序嘛
2019-09-25 11:46
h***@163.com

h***@163.com

回复 1***@qq.com :
谢谢你的指导
2019-09-24 11:11
黎明将至

黎明将至

```2019-11月份后 HBuilderX 2.3.0以下版本还 支持 云打包么```
2019-09-24 10:42
1***@qq.com

1***@qq.com

回复 h***@163.com :
这并不是自定义组件的 bug, 小程序的 swiper-item 本身就不支持你 slot 嵌套
2019-09-24 10:12
h***@163.com

h***@163.com

自定义组件模式有个bug,slot里面内容和slot所在的父节点平级了,导致swiper-item这种组件就不能用了,很多样式也无法使用了
2019-09-23 12:03
旧时光

旧时光

我没有看懂你们的公告,搞的我的现在不知道我的开发模式是非自定义组件模式,还是自定义组件模式,这两种开发模式有啥区别?到底是啥意思
2019-09-20 09:44
阁楼庭院

阁楼庭院

回复 3***@qq.com :
不是不换,是公司没有给时间换,这个需要每个页面排查,变动还是挺大的,并不是一个true改为false那么简单的,兄跌
2019-09-20 09:40