uniapp踩坑日记(一)

2022年3月31日 366点热度 0人点赞 0条评论

点击蓝字,我们重新认识一下呀

图片






图片


01

v-show,v-if


        将uniapp打包成小程序时,v-show,和v-if 对第三方组件是无法使用的,只能用在原生的标签上,但是运行在浏览器是可以的。
例:

// 在组件上使用无法使用<u-cell v-show="show"></u-cell>
// 必须用在原生的<view></view>标签上<view v-show="show">   <u-cell ></u-cell></view>


02

关于$ref在小程序里面不能使用


        因为小程序是没有dom节点的概念的,在使用uniapp,运行在小程序模拟器中发现this.$ref运行不了。但是这个在高版本的模拟器中已经解决。所以只需要将模拟器的调试基础库版本调整到2.19.2以上就可以使用了。具体见下图:

图片


微信的基础库的更新日志(第三条):

图片

03

uniapp打包成小程序分包

   

    tips: 组件打包最好放到主包里面            

    使用uniapp开发各种小程序会有大小的限制,例如微信小程序的一个包最大是2M,因此就需要用到分包。在开发时,最好将图片放到CDN上这样子可以减少包的体积,同时有缓存也可以减少自己服务器的压力。

 表1: 各个小程序的对包的体积的限制

小程序 单包大小 总包大小
微信小程序 2M 20M
百度小程序 2M 8M
支付宝小程序 2M 8M
QQ小程序 2M 24M

字节小程序

2M 16M(字节小程序基础库 1.88.0 及以上版本开始支持,字节小程序开发者工具请使用大于等于 2.0.6 且小于 3.0.0 的版本)

分包步骤:

    1. 首先在 manifest.json 文件中配置

// 以微信小程序为例。mp-weixin 指微信小程序,其他的将这个位置换一下就可以"mp-weixin" : {        "optimization" : {            "subPackages" : true        }    }

    2. 项目目录结构 (分包主要是用 page 以及同级目录的在 pages.json 里面指定的root目录来分包)

图片

    3. pages.json 的配置

"pages": [ // pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages    {      "path": "pages/login/login",      "style": {        "navigationBarTitleText": "登录",        "enablePullDownRefresh": false      },      "meta": {        "auth": false      }    },    ...],// 子包写在这个里面 上面的 'pages' 和 'subPackages' 是同一级"subPackages": [{    "root""pagesA"// 指定子包的根目录,    "pages": [ // 页面配置,跟上面pages里面的参数是一样的       {          "path": "putStorage/putStorage"          "style": {...}        },        ...     ]}],// preloadRule 分包预载配置。// 配置preloadRule后,在进入小程序某个页面时,由框架自动预下载可能需要的分包,提升进入后续分包页面时的启动速度// preloadRule 中,key 是页面路径,value 是进入此页面的预下载配置,每个配置有以下几项:network, packages"preloadRule": {    "pagesA/queryStorage/queryStorage": {      "network""all"// 在指定网络下预下载,可选值为:all(不限网络)、wifi(仅wifi下预下载)      "packages": ["pagesA"] // 进入页面后预下载分包的 root 或 name。__APP__ 表示主包。     }}

最后:在用uniapp做小程序的项目时,碰到个问题,使用预览模式,运行在手机上时,小程序一直请求接口运行不了,但是打开调试模式就可以了。后面发现是因为后台的接口是http协议。开发的时候没有注意,一直以为用的是https的协议,开发要注意细节!!!。因为小程序是需要https的安全域名的,如果预览在手机上,但是接口请求是http协议,没办法请求到后台,此时打开小程序的调试模式就可以运行小程序了。



图片

你这么好看,一定要点个在看

图片

36490uniapp踩坑日记(一)

这个人很懒,什么都没留下

文章评论