不是标题党,我们公司的项目确确实实是省下了100kb的主包空间,而且还是在没有牺牲任何的性能和业务的前提下实现的. 但是100kb是根据项目大小,所以你用这个插件可能省下超过100kb或者更少. 直接上代码看效果 一个名为fixMiniCssPlugin的插件,在vue.config.js使用它 class fixMiniCssPlugin { constructor() {} apply(compiler) { compiler.hooks.thisCompilation.tap('remo'…
公共的代码包括公用的vue组件和js代码,从维护性的角度来说应该放到主包才对, 但是主包有大小限制,如果把2个分包都在用的代码放到主包里面那2M很快就满了. 所以该放在哪?我的方案是从维护的角度放在主包,然后用webpack的插件在打包的时候 把只有分包在用的vue和js代码分别放到分包中去. uni的文档在manifest.json中有这么一个配置"optimization":{"subPackages":true}, 官方有介绍我就不重复了,从代码的角度来说就是…
这次的优化我公司项目主包只减小了32kb,但是减小的不仅仅是主包,所有分包均在没有改动任何业务代码的情况下完成了压缩空间的优化. 主包分包压缩空间的优化都要视项目而定,32kb只是我公司的小程序项目. 还有一点需要提前说明,此优化我公司项目因为主包够用了就还没有正式使用,不保证完全没有问题,所以要辛苦测试了. 插件 uni-optimize 是我看了uni源码之后发现的所有可安全优化的地方,包括压缩空间和提升打包速度2个方面 uni-optimize中的fix-ensure-import-plu…
一:微信小程序跳转 使用限制 需要用户触发跳转 从 2.3.0 版本开始,若用户未点击小程序页面任意位置,则开发者将无法调用此接口自动跳转至其他小程序. 需要用户确认跳转 从 2.3.0 版本开始,在跳转至其他小程序前,将统一增加弹窗,询问是否跳转,用户确认后才可以跳转其他小程序.如果用户点击取消,则回调 fail cancel. 每个小程序可跳转的其他小程序数量限制为不超过 10 个 从 2.4.0 版本以及指定日期(具体待定)开始,开发者提交新版小程序代码时,如使用了跳转其他小程序功能,则需…
GitHub Top 本项目为 GitHub 热点项目微信小程序客户端,首页仅推荐一个热点项目,这个项目往往是社会热门事件所催生的一个项目,如 996.ICU.wuhan2020,所推荐项目标准为:积极.健康.热点.具有一定进步性. GitHub 小程序有很多,但推荐热点项目的往往是拉取 GitHub Trending 数据,有其意义(本小程序也支持此功能),但获取所需信息效率较低,不一定找得到你所需要的项目,因此创建本项目.本项目创建的目标是:打开即所需. 本项目使用方法 喜欢闲逛 GitHu…
setData setData 是小程序开发中使用最频繁的接口,也是最容易引发性能问题的接口.在介绍常见的错误用法前,先简单介绍一下 setData 背后的工作原理. 工作原理 小程序的视图层目前使用 WebView 作为渲染载体,而逻辑层是由独立的 JavascriptCore 作为运行环境.在架构上,WebView 和 JavascriptCore 都是独立的模块,并不具备数据直接共享的通道.当前,视图层和逻辑层的数据传输,实际上通过两边提供的evaluateJavascript 所实现.即…
小程序代码 upload:function(e){ var that = this; wx.showActionSheet({ itemList: ['从相册选择','拍照'], itemColor:"#f7982a", success:function(res){ if(!res.cancer){ if (res.tapIndex==0){ that.chooseWxImageShop('album'); } else if (res.tapIndex == 1) { that.ch…
字体图标/字体仅支持网络css路径(也就是不支持本地路径) 参考于:https://blog.csdn.net/u013451157/article/details/79825740…
阿里字体图标:http://www.iconfont.cn/home/index?spm=a313x.7781069.1998910419.2 1.单个/ 多个选择字体图标 2. 导入字体库 可以参考:https://blog.csdn.net/qq_28988969/article/details/76633921…
原来的代码如下: <view class="right">     <picker mode="date" value="{{material.arriveToDate}}" bindchange="changeDate2">         <input placeholder="请输入预计到货时间" name="arriveToDate" value=&…