【问题标题】:Angular CLI 1.6.6 eject create webpack.config.js with full scripts pathAngular CLI 1.6.6 弹出创建带有完整脚本路径的 webpack.config.js
【发布时间】:2018-02-01 09:57:44
【问题描述】:

我刚刚安装了最新版本的 angular (5.2.0) 和 CLI 1.6.6。 我确实弹出命令并获得带有完整脚本路径的 webpack.config.js:

"plugins": [
    new NoEmitOnErrorsPlugin(),
    new ScriptsWebpackPlugin({
      "name": "scripts",
      "sourceMap": true,
      "filename": "scripts.bundle.js",
      "scripts": [
        "D:\\GitProjects\\Product\\ProjectName\\node_modules\\jquery\\dist\\jquery.min.js",
        "D:\\GitProjects\\Product\\ProjectName\\node_modules\\tv4\\tv4.js"
      ],
      "basePath": "D:\\GitProjects\\Product\\ProjectName"
    }),

为什么路径是绝对的,不应该是相对的?

【问题讨论】:

    标签: javascript angular webpack


    【解决方案1】:

    这是一个known bug。好吧,由于“弹出”是一次性使用命令,因此您可以做的最好的事情是手动更改路径(或为其编写一个简单的脚本)。

    【讨论】:

    • 是的,那是别名,我在以前的版本中遇到了同样的问题,并更新了新版本。有了新的,不再有“别名问题”,而是脚本绝对路径的另一个问题。
    【解决方案2】:

    解决方法是将所有绝对路径替换为相对路径。我们可以为此使用 process.cwd() 。 process.cwd() 返回当前工作目录

    "plugins": [
        new NoEmitOnErrorsPlugin(),
        new ScriptsWebpackPlugin({
          "name": "scripts",
          "sourceMap": true,
          "filename": "scripts.bundle.js",
          "scripts": [
            path.join(process.cwd(), "node_modules\\jquery\\dist\\jquery.min.js");,
            path.join(process.cwd(), "node_modules\\tv4\\tv4.js");
          ],
          "basePath": process.cwd()
        }),
    

    【讨论】:

      猜你喜欢
      • 2011-11-01
      • 2021-10-31
      • 1970-01-01
      • 2018-08-03
      • 2019-03-17
      • 1970-01-01
      • 1970-01-01
      • 2010-10-06
      • 2017-09-10
      相关资源
      最近更新 更多