微信小程序 分包:普通分包 + 独立分包_小程序分包后的话 文件引用路径不就乱了吗

2.如何查看分包体积:(编译器右上角) 详情 -- 基本信息 -- 本地代码(展开就可看到)

*/
“subPackages”: [{ // 通过 subPackages 节点,声明分包结构
“root”: “package1”, // 第一个分包的根目录 相对于根目录 package1 进行存放的
“name”: “pack1”, // 分包别名
“pages”: [ //当前分包下,所有页面的相对存放路径(会自动生成对应页面 – 与上面的pages相同)
“pages/index/index”
]
}, {
“root”: “package2”,
“name”: “pack2”,
“independent”: true, //将package2,设置为独立分包
“pages”: [
“pages/index/index”
]
}],


* 2). 打包原则:
	+ 小程序会按照subPackages的配置进行分包,subPackages之外的目录将被打包到主包中
	+ 主包也可以有自己的pages(即最外层的pages字段)
	+ tabBar页面必须在主包内
	+ 分包之间不能互相嵌套
* 3). 引用原则:
	+ 主包无法引用分包内的私有资源
	+ 分包之间不能互相引用私有资源
	+ 分包可以引用主包内的公共资源


### 


### 独立分包


* 什么是独立分包:
	+ 本质上也是分包,只不过它比较特殊,可以独立于主包和其他分包而单独运行
* 与普通分包区别:
	+ 最主要区别:是否依赖于主包才能运行
	+ 普通分包:必须依赖于主包才能运行
	+ 独立分包可以再不下载主包的情况下,独立运行
* 应用场景:
	+ 可以按需将某些,具有一定功能独立性的页面配置到独立分包中,原因如下:
		- 当小程序从普通分包页面启动时,需要先下载主包
		- 独立分包不依赖主包即可运行,可以很大程度上提升分包页面的启动速度
* 配置方法:
	+ 在 subPackages中,设置independent: true(如上图所示👆🏻)
* 引用原则:
	+ 独立分包、普通分包、主包之间是相互隔绝的,不能互相引用彼此的资源
	+ 主包无法引用独立分包内的私有资源
	+ 独立分包之间,不能互相引用私有资源
	+ 独立分包和普通分包之间,不能互相引用私有资源
	+ **特别注意:**独立分包中**不能引用**主包内的公共资源,而普通分包**可以**



### 分包预下载


* 什么是分包预下载:
	+ 在进入小程序的某个页面时,由框架自动预下载可能需要的分包,从而提升进入后续分包页面时的启动速度
* 配置方法:
	+ 预下载分包行为,会再进入指定页面时触发。在app.json中,使用 preloadRule 定义分包预下载规则 
	```
	/*
	分包预下载规则:
	    * network:在指定网络模式下进行预下载(默认wifi)。
	        * all 不限网络  
	        * wifi  仅wifi模式下进行预下载
	        
	    * packages:需要预下载哪些分包
	        *可以通过name / root 指定预下载哪些分包
	*/
	"preloadRule": {
	    "pages/allColors/allColors": { // 需要预加载其他包的页面路径
	        "network": "all", // 在指定模式中预下载, 只有 WiFi / all 选项
	        "packages": ["package1", "pack2"] // 需要预加载的分包 -- 填写路径或者名字(name)都可以,因为都具有唯一性。如:package1为(root)路径, pack2 为(name)名字
	    }
	},
	```
* 分包预下载限制:
	+ 同一个分包中的页面享有共同的预下载大小限额2M,例如:![](https://img-blog.csdnimg.cn/6f40884ee30e471d9153d59ac34b56cd.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAU2hpbWVuZ18xOTg5,size_20,color_FFFFFF,t_70,g_se,x_16)


PS:
**ES6**

*   列举常用的ES6特性:

*   箭头函数需要注意哪些地方?

*   let、const、var

*   拓展:var方式定义的变量有什么样的bug?

*   Set数据结构

*   拓展:数组去重的方法

*   箭头函数this的指向。

*   手写ES6 class继承。

**[开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】](https://bbs.csdn.net/topics/618166371)**

![](https://img-blog.csdnimg.cn/img_convert/aac1740e50faadb9a6a7a5b97f9ccba8.png)



**微信小程序**

*   简单描述一下微信小程序的相关文件类型?

*   你是怎么封装微信小程序的数据请求?

*   有哪些参数传值的方法?

*   你使用过哪些方法,来提高微信小程序的应用速度?

*   小程序和原生App哪个好?

*   简述微信小程序原理?

*   分析微信小程序的优劣势

*   怎么解决小程序的异步请求问题?



![](https://img-blog.csdnimg.cn/img_convert/60b1dbe5c76e264468aa993416a9a031.png)



**其他知识点面试**

*   webpack的原理

*   webpack的loader和plugin的区别?

*   怎么使用webpack对项目进行优化?

*   防抖、节流

*   浏览器的缓存机制

*   描述一下二叉树, 并说明二叉树的几种遍历方式?

*   项目类问题

*   笔试编程题:



![](https://img-blog.csdnimg.cn/img_convert/aec12fc95e5722b9f2f1f22eeb5e67bd.png)



#### 最后



技术栈比较搭,基本用过的东西都是一模一样的。快手终面喜欢问智力题,校招也是终面问智力题,大家要准备一下一些经典智力题。如果排列组合、概率论这些基础忘了,建议回去补一下。
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值