您好,登錄后才能下訂單哦!
這篇文章主要講解了“構建npm的方式有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“構建npm的方式有哪些”吧!
默認的構建 npm 方式
默認情況下,在 miniprogramRoot 內正確配置了 package.json 并執行 npm install 之后,其構建 npm 的結果是,為每一個 package.json 對應的 node_modules 構建一份 miniprogram_npm,并放置在對應 package.json 所在目錄的子目錄中。參考 demo
構建 npm 前
├── miniprogram
│ ├── app.js
│ ├── app.json
│ ├── app.wxss
│ ├── index
│ │ ├── 略
│ ├── node_modules // 可被默認方式構建 npm,因為它在 miniprogramRoot 內
│ ├── package.json
│ └── sub_package
│ ├── node_modules // 可被默認方式構建 npm,因為它在 miniprogramRoot 內
│ ├── package.json
│ └── sub_package_page
├── node_modules // 不被默認方式構建 npm,因為它不在 miniprogramRoot 內
├── package.json
└── project.config.json // 其中存在配置 `"miniprogramRoot": "./miniprogram"`
構建 npm 后
├── miniprogram
│ ├── app.js
│ ├── app.json
│ ├── app.wxss
│ ├── index
│ │ ├── 略
│ ├── miniprogram_npm
│ ├── node_modules // 可被默認方式構建 npm,因為它在 miniprogramRoot 內 --> 同級的 miniprogram_npm 是這份 node_modules 的構建結果
│ ├── package.json
│ └── sub_package
│ ├── miniprogram_npm
│ ├── node_modules // 可被默認方式構建 npm,因為它在 miniprogramRoot 內 --> 同級的 miniprogram_npm 是這份 node_modules 的構建結果
│ ├── package.json
│ └── sub_package_page
├── node_modules // 不被默認方式構建 npm,因為它不在 miniprogramRoot 內 --> 它并沒有對應的 miniprogram_npm 生成
├── package.json
└── project.config.json // 其中存在配置 `"miniprogramRoot": "./miniprogram"`
自定義 node_modules 和 miniprogram_npm 位置的構建 npm 方式
與 “默認的構建 npm 方式” 不一樣,此種方式需要開發者在 project.config.json 中指定 mode_modules 的位置 和目標 miniprogram_npm 的位置。參考demo
使用方法
配置 project.config.json 的 setting.packNpmManually 為 true,開啟自定義 node_modules 和 miniprogram_npm 位置的構建 npm 方式
配置 project.config.json 的 setting.packNpmRelationList 項,指定 packageJsonPath 和 miniprogramNpmDistDir 的位置
其中 packNpmRelationList 的格式為
packageNpmRelationList: Array<{
"packageJsonPath": string,
"miniprogramNpmDistDir": string
}>
packageJsonPath 表示 node_modules 源對應的 package.json
miniprogramNpmDistDir 表示 node_modules 的構建結果目標位置
構建 npm 前
.
├── miniprogram
│ ├── app.js
│ ├── app.json
│ ├── app.wxss
│ ├── index
│ ├── sitemap.json
│ └── sub_package
│ └── sub_package_page
├── project.config.json
├── src_node_modules_1
│ ├── node_modules
│ └── package.json
└── src_node_modules_2
├── node_modules
└── package.json
其中 project.config.json 存在配置
"setting": {
"packNpmManually": true,
"packNpmRelationList": [
{
"packageJsonPath": "./src_node_modules_1/package.json",
"miniprogramNpmDistDir": "./miniprogram/"
},
{
"packageJsonPath": "./src_node_modules_2/package.json",
"miniprogramNpmDistDir": "./miniprogram/sub_package"
}
]
}
構建 npm 后
.
├── miniprogram
│ ├── app.js
│ ├── app.json
│ ├── app.wxss
│ ├── index
│ ├── miniprogram_npm // 由 src_node_modules_1/node_modules 構建得到
│ ├── sitemap.json
│ └── sub_package
│ ├── miniprogram_npm // 由 src_node_modules_2/node_modules 構建得到
│ └── sub_package_page
├── project.config.json
├── src_node_modules_1
│ ├── node_modules
│ └── package.json
└── src_node_modules_2
├── node_modules
└── package.json
感謝各位的閱讀,以上就是“構建npm的方式有哪些”的內容了,經過本文的學習后,相信大家對構建npm的方式有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。