今天在初始化后的小程序中引入TDesign组件库,构建npm时报错。

项目工程结构说明

在这里插入图片描述

初始化后的项目中,包含miniprogram文件夹和一些项目配置文件,在project.config.json文件中定义了小程序的Root目录,npm构建就是在这个miniprogramRoot中执行的。

解决方法

在这里插入图片描述
package.json定义了项目的包依赖信息,npm构建的路径中必须要包含该文件,由于初始化的项目中,miniprogram路径下没有package.json,导致构建失败。解决方法是复制package.json到该目录,或者直接在miniprogram目录下执行npm init,该命令会创建package.json。在miniprogram目录下的package.json中定义需要引入的依赖。

为了保证构建之后,小程序能够正确引用导入的依赖,就需要确保npm构建时,依赖被打包到miniprogram目录下的miniprogram_npm路径下。所以还需要在project.config.json中做如下配置:

{
  "setting":{
    ...
	"packNpmRelationList": [
      {
        "packageJsonPath": "./miniprogram/package.json", // 指定npm构建所用到的package.json的位置
        "miniprogramNpmDistDir": "./miniprogram/miniprogram_npm"// 指定npm构建的输出路径
      }
    ],
    ...
  }
}

此时执行npm构建,就会看到依赖已经被打包进来了:
在这里插入图片描述

引入依赖导致的其他问题

在这里插入图片描述
npm是node的包管理工具,Node.js 使用的是 CommonJS 模块系统 (require / module.exports),而不是 ES 模块 (import / export),所以导入后的依赖会报错。需要将JS编译成ES
在这里插入图片描述

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部