Angular 4+>在ts文件中,引用node_modules文件夹中的文件include

时间:2018-12-14 09:53:43

标签: angular typescript

正如问题中提到的,我在Angular项目中使用了一个包,该包需要引用构造函数中的文件(请参见下文):

constructor() {
    PDFJS.workerSrc = `./assets/js/pdf.worker.js`;
}

如您所见,到目前为止,我设法通过将js文件放在资产文件夹中并获得这样的路径来实现这一目标。 但这实际上不是最佳的。

我要实现的目标是:
我想在开发环境中直接在node_modules文件夹中引用该文件,而当我在Prod中时,请使用Webpack不编译该文件(或类似的东西)并在我的代码中引用它!

编辑
该文件实际上是软件包的一部分,所以他的位置直接在node_modules文件夹中,而我想要实现的实际上是引用该文件。我设法解决的方法是获取此文件并将其放入我的资产中文件夹,但是不好...

您对此有何建议?

提前谢谢!

1 个答案:

答案 0 :(得分:0)

我认为您不应该将这些内容放入node_modules中。 您可以配置webpack在什么情况下编译什么。 如果您位于webpack.config文件中,则:

module.exports = (env, argv) => {

  if (argv.mode === 'development') {

  }

  if (argv.mode === 'production') {
    //...
  }

  return config;
};

在运行脚本中,您可以配置Webpack脚本的运行模式。 类似于webpack

webpack --progress --colors --config webpack.config.js --mode production

有关Webpack模式的更多信息:https://webpack.js.org/concepts/mode/