sonofmagic / weapp-tailwindcss

weapp-tailwindcss - bring tailwindcss to weapp ! 把 tailwindcss 原子化思想带入小程序开发吧 ! weapp-vite 把现代化的开发模式带入小程序开发
https://weapp-tw.icebreaker.top
MIT License
1.2k stars 87 forks source link

使用原生小程序开发模板时,如何使用其他npm包? #244

Closed rcocco closed 11 months ago

rcocco commented 11 months ago

使用 weapp-tailwindcss-gulp-template(gulp打包) 这个模板时,如果希望在小程序中使用westore或vant等其他npm包,根据小程序的文档,node_modules必须在project.config.json 文件中miniprogramRoot字段所指向的目录(dist)下。 但如果只在dist里安装了npm包,在开发时 typescript 会报错,只能到 gulp-app目录下再安装一次,也就是一个包必须既在dist下安装一次,又在gulp-app下安装一次,不太好管理。 我这种使用方法是不是有问题?有没有只需要安装一次的方法?

sonofmagic commented 11 months ago

可以看一下 https://github.com/sonofmagic/weapp-tailwindcss/tree/feature/cache-purge-when-config-json-change/demo/gulp-app 这个demo,它就是原生使用 vant 的示例

思路是这样的,你不需要把 node_modules 装在 dist 里面,你就装在 package.json 同级的那一层,然后使用微信 IDE 的构建 npm,把 miniprogram_npm 打进 dist , 这样就能正常运作了。

project.config.json:

"setting":{
   "packNpmManually": true,
   "packNpmRelationList": [
    {
      "packageJsonPath": "./package.json",
      "miniprogramNpmDistDir": "./dist"
    }
  ]
}

然后到时候清除 dist 里面内容的时候,不清除 miniprogram_npm,那以后就都可以复用了,不用在反复重新安装。

rcocco commented 11 months ago

感谢大佬