收藏
回答

npm构建能否在project.config.json中自定义依赖的package.json的路径?

目前,project.config.json中的miniprogramRoot可以自定义设置小程序源码目录,而小程序构建npm所需要的package.json和node_modules是依赖于miniprogramRoot的,必须miniprogramRoot设置的目录内,这是不合理的。

因为当我们开始自定义设置miniprogramRoot时,往往意味着项目的package.json、node_modules已经和miniprogramRoot设置的路径不在一个目录内,否则也不会去设置miniprogramRoot了。

package.json和node_modules不应该简单粗暴地局限在miniprogramRoot内。而是应该也可以单独配置。

├── README.md
├── build
│   ├── gulp.base.js
│   ├── gulp.config.js
│   └── gulp.utils.js
├── changelog.md
├── gulpfile.js
├── package-lock.json
├── package.json // package.json不在"src/"内部
├── project.config.json // "miniprogramRoot": "src/"
├── src
│   ├── api
│   ├── app.js
│   ├── app.json
│   ├── app.scss
│   ├── app.wxss
│   ├── components
│   ├── config
│   ├── constant
│   ├── images
│   ├── libs
│   ├── pages
│   ├── sitemap.json
│   ├── styles
│   ├── templates
│   ├── utils
│   └── wxs
└── template
    ├── component
    └── page


另:附其他开发者的意见:https://developers.weixin.qq.com/community/develop/article/doc/00040e8fd645a033d0f8502bf5b813

npm支持做两点改造也能不动工程结构解决此问题:

1、构建npm是基于project.config.json的位置找package.json,而不是“miniprogramRoot”;

2、node_modules位置也应以project.config.json为准,而不是“miniprogramRoot”。

总之“miniprogramRoot”只是用来整理代码结构的一个配置,小程序再怎么变也离不开project.config.json,而不是miniprogrammRoot


回答关注问题邀请回答
收藏

2 个回答

  • 兔六哥
    兔六哥
    2021-02-24

    2021春节回来,开发者工具升级了两次,出现这个问题了,年前是没有这个问题的。期待官方给出解决方法

    2021-02-24
    有用
    回复
  • zeno
    zeno
    2020-06-22

    遇到了同样的问题,头疼中。。

    2020-06-22
    有用
    回复
登录 后发表内容
问题标签