- 插件安装完以后会在uni项目根目录下生成
mainWeixinMp
目录(微信)代表了是存放原生小程序的目录 - uni自己项目的结构不需要变
- uni的相关页面配置在uni目录的
pages.json
(如果不设置indexPage
,以原生app.json
第一个页面为首页) - 原生小程序的相关页面配置在原生小程序的
app.json
- 在uni项目根目录下执行
npm run dev:mp-weixin-pack
- 使用微信小程序的ide预览构建后的目录
dist/dev/mp-weixin-pack
- 如果需要修改相关的目录名称可以自行修改uni项目根目录下的
projectToSubPackageConfig.js
- 构建后的目录的
app.json
会根据原生小程序的app.json
为主,比如包括extjson
的设置、tabbar
的设置、navigation
的设置等一切的全局设置都需要配置在原生的app.json
中(如果以前配置在了uni项目的pages.json
里,请移至mainWeixinMp
的app.json
中) - 构建后的目录会以原生小程序为根,uni项目会被分配到一个指定目录中,默认为
uniSubpackage
(可以在projectToSubPackageConfig.js
中修改),如果不想将uni项目分配到子目录而是占据根目录,则需要配置极端混合
模式(参考文档中极端混合
模式的配置) - 非极端混合模式的场景一般都会遇到页面跳转的路径问题,属于正常情况,因为uni项目被指定到了一个子目录中,可以参考文档底部的
路径问题
,或者参考pack.config.js
的使用说明,或者在uni项目内使用相对路径跳转
在mainWeixinMp/app.json
中,将uniSubpackage
设置为分包目录
注意:subPackages里的pages设为空数组
app.json
{
"subPackages":[{
"root":"uniSubpackage",
"pages":[]
}]
}
首先应该使用极端混合
模式,然后在mainWeixinMp
目中建立一个目录用来指明原生小程序的分包名称,比如nativeSubpackage
将原生小程序的分包项目或者相关文件放置在mainWeixinMp/nativeSubpackage
中
在mainWeixinMp/app.json
中,将nativeSubpackage
设置为分包目录
app.json
{
"subPackages":[{
"root":"nativeSubpackage",
"pages":[
"pages/index/index",
"pages/about/about"
]
}]
}