Skip to content

Latest commit

 

History

History
43 lines (42 loc) · 2.69 KB

help.md

File metadata and controls

43 lines (42 loc) · 2.69 KB

重要!!使用场景描述(以微信小程序为例)

原生小程序项目和uni-app项目同时开发

  • 插件安装完以后会在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里,请移至mainWeixinMpapp.json中)
  • 构建后的目录会以原生小程序为根,uni项目会被分配到一个指定目录中,默认为uniSubpackage(可以在projectToSubPackageConfig.js中修改),如果不想将uni项目分配到子目录而是占据根目录,则需要配置极端混合模式(参考文档中极端混合模式的配置)
  • 非极端混合模式的场景一般都会遇到页面跳转的路径问题,属于正常情况,因为uni项目被指定到了一个子目录中,可以参考文档底部的路径问题,或者参考pack.config.js的使用说明,或者在uni项目内使用相对路径跳转

重要!!关于分包的场景

将整个uni项目作为原生小程序的分包

mainWeixinMp/app.json中,将uniSubpackage设置为分包目录
注意:subPackages里的pages设为空数组
app.json

{
  "subPackages":[{
    "root":"uniSubpackage",
    "pages":[]
  }]
}

将原生小程序作为分包,将uni作为主包

首先应该使用极端混合模式,然后在mainWeixinMp目中建立一个目录用来指明原生小程序的分包名称,比如nativeSubpackage
将原生小程序的分包项目或者相关文件放置在mainWeixinMp/nativeSubpackage
mainWeixinMp/app.json中,将nativeSubpackage设置为分包目录
app.json

{
  "subPackages":[{
    "root":"nativeSubpackage",
    "pages":[
        "pages/index/index",
        "pages/about/about"
    ]
  }]
}

其他更复杂的分包模式(比如uni项目中自己的分包结合原生小程序中自己的分包,见解耦构建分包配置场景示例