收藏
回答

自定义位置的构建npm方式不起作用?文档中提供的demo也是同样无法实现自定义位置构建,为什么?

图一

图二

图三

起初我自己写了例子尝试通过配置packNpmManually和packNpmRelationList来实现自定义位置的构建npm,但发现不起作用。于是下载文档中提供的demo(如截图中圈的demo项目),发现依旧无法实现该自定义效果,点击“构建npm”提示“没有找到
可以构建的npm包”。这里说明一下,我已经通过`npm install`安装了package.json中配置的依赖。

我尝试去调试修改,得出的结论确是packNpmManually和packNpmRelationList这两个配置根本不起作用。何以见得?
如图二中,project.config.json中配置了根路径miniprogramRoot为`miniprogram/`而demo项目的该文件中无package.json文件,如果packNpmManually和packNpmRelationList这两个配置起作用的话,miniprogram文件中不需要有package.json文件应该也是可以构建npm成功的,而不会提示
提示“没有找到可以构建的npm包。而我尝试去掉miniprogramRoot为`miniprogram/`这个配置后,默认的根路径就变为了图三中`project.config.json`文件所有的目录,这时候npm构建是成功的,但miniprogram_npm文件就在默认的位置生成了而不是我自定义的位置。所谓默认位置是指与node_modules文件同级的位置;
所谓自定义位置是指我通过packNpmRelationList配置的位置。

以上是我遇到的疑惑,如果有人解决过这个问题,还望赐教,感谢~





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

6 个回答

  • 丶Dai
    丶Dai
    2022-01-27

        "packNpmManually": true,

        "packNpmRelationList": [

          {

            "packageJsonPath": "./package.json",

            "miniprogramNpmDistDir": "./miniprogram/"

          }

        ],

    根目录下面 project.config.json 文件 配置如上:

    2022-01-27
    有用 7
    回复
  • 听说风从天堂来
    听说风从天堂来
    2022-03-22

    记得把packNpmManually改成true啊兄跌




     "packNpmManually": true,

        "packNpmRelationList": [

          {

            "packageJsonPath": "./package.json",

            "miniprogramNpmDistDir": "./miniprogram/"

          }

        ],


    2022-03-22
    有用 6
    回复 1
  • 添明
    添明
    11-29

    我是通过腾讯元宝找到的这个解决方法,希望对大家有所帮助:

    1、微信小程序要求NPM包必须安装在miniprogram_npm目录下,而默认的npm install会将包安装在项目根目录的node_modules中。所以需要在miniprogram 目录下 创建miniprogram_npm 文件夹,并将node_modules文件夹中所有文件(含文件夹)复制到miniprogram_npm 文件夹中。

    2、然后再像1楼、2楼两位大神那样在根目录下的project.config.json中 "packNpmManually"改成“ture”,"packNpmRelationList"增加"packageJsonPath": "./package.json","miniprogramNpmDistDir": "./miniprogram/"。

    如下所示:

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

    3、 如果还是不管用的话,需要将该项目退出,然后再进入该项目,依次点击“工具”->“构建npm”。

    11-29
    有用
    回复
  • Kay
    Kay
    2024-05-09

    微信小程序如何在 index.json 引入扩展组件?

    扩展组件通过npm安装之后,怎么在项目中使用?

    微信小程序通过工具构建npm失败怎么解决?

    踩坑总结:https://fifteen718.blog.csdn.net/article/details/138613311


    2024-05-09
    有用
    回复 1
    • 只缘身在此山钟
      只缘身在此山钟
      2024-05-14
      大佬,我出现这个问题怎么办
      2024-05-14
      回复
  • 尘埃🎈
    尘埃🎈
    2022-06-20

    project.config.json 下增加 如下:

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


    2022-06-20
    有用
    回复 1
    • JC
      JC
      2022-11-26
      尝试多次 miniprogramNpmDistDir 指定 ./dist 这句有坑,如果这样设置可以通过工具-》构建 npm  但是编译的时候报错。必须指定为  ./miniprogram/
      2022-11-26
      1
      回复
  • 疯狂的小辣椒
    疯狂的小辣椒
    2020-07-28

    你好,文档的demo是可以正常构建npm的哦

    2020-07-28
    有用
    回复 6
    查看更多(1)
登录 后发表内容
问题标签