编译后的lerna项目不能解析共享库包的模块。
创始人
2024-12-08 07:00:30
0

为共享库包单独创建一个dist文件夹,并在其中打包该包的代码并导出包。然后,在项目中使用该包时,使用dist文件夹中的包作为引用。以下是代码示例:

在共享库包的package.json中添加以下命令:

{
  "scripts": {
    "build": "tsc && webpack"
  }
}

在项目的package.json中添加依赖项:

{
  "dependencies": {
    "my-common-library": "file:../my-common-library/dist/my-common-library-1.0.0.tgz"
  }
}

在共享库包的根目录下创建一个webpack.config.js文件:

const path = require('path');

module.exports = {
  entry: './src/index.ts',
  output: {
    filename: 'my-common-library.js',
    path: path.resolve(__dirname, 'dist'),
    library: 'my-common-library',
    libraryTarget: 'umd',
    umdNamedDefine: true
  },
  mode: 'production'
};

在共享库包的根目录下创建一个tsconfig.build.json文件:

{
  "extends": "./tsconfig.json",
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "outDir": "./dist",
    "declaration": true,
    "declarationDir": "./dist"
  },
  "exclude": ["src/**/*.test.ts", "dist"]
}

在共享库包的根目录下运行“npm run build”命令生成代码包。

现在,在项目中使用共享库包时,不要使用源代码文件,而是使用dist文件夹中的包:

import { MyModule } from 'my-common-library';

// Use MyModule

注意:如果该共享库包还有其他依赖项,则需要将这些依赖项打包到同一个dist文件夹中,并在项目中添加它们的依赖项引用。

相关内容

热门资讯

十分钟了解!兴动辅助器,沐沐福... 十分钟了解!兴动辅助器,沐沐福建麻将app有猫腻吗,揭秘攻略(有挂机密)沐沐福建麻将app有猫腻吗辅...
一分钟了解!川麻圈斗十四有辅助... 一分钟了解!川麻圈斗十四有辅助器吗,欢聚水鱼辅助软件有用吗,攻略教程(有挂解说)亲,关键说明,川麻圈...
八分钟了解!雀神广东麻雀辅助器... 八分钟了解!雀神广东麻雀辅助器,白金岛跑得快外挂,玩家教程(有挂教程)1、玩家可以在雀神广东麻雀辅助...
五分钟了解!掌中乐游戏中心有辅... 五分钟了解!掌中乐游戏中心有辅助器吗,欢乐茶馆有外挂没有,教你攻略(有挂教学)1、该软件可以轻松地帮...
9分钟了解!一起跑得快外 挂,... 9分钟了解!一起跑得快外 挂,快玩炸翻天有挂吗,靠谱教程(有挂揭秘)1、下载好快玩炸翻天有挂吗辅助软...
四分钟了解!哈灵麻将怎么让系统... 四分钟了解!哈灵麻将怎么让系统发好牌,皮皮四川麻将攻略,德州教程(有挂教学);1、让任何用户在无需哈...
6分钟了解!yy比鸡软件发牌规... 6分钟了解!yy比鸡软件发牌规律,懒人斗十四有外挂吗,AI教程(有挂透明)1、超多福利:超高返利,海...
9分钟了解!钱塘十三水辅助挂,... 9分钟了解!钱塘十三水辅助挂,南通长牌吗,详细教程(有挂技巧);1、钱塘十三水辅助挂透视辅助简单,钱...
3分钟了解!中至吉安麻将有挂吗... 3分钟了解!中至吉安麻将有挂吗,新科乐棋牌有没有挂,必备教程(有挂软件)1、这是跨平台的新科乐棋牌有...
五分钟了解!同城比鸡辅助软件,... 五分钟了解!同城比鸡辅助软件,掌酷十三张有外挂吗,德州教程(有挂脚本)1、不需要AI权限,帮助你快速...