@ nrwl / node: build: Как изменить имя выходного файла? - PullRequest
0 голосов
/ 05 апреля 2020

Я работаю в nx monorepo с Angular CLI и бэкэндом Node. В angular. json я использую пользовательскую конфигурацию веб-пакета, чтобы изменить имя файла пакета. Вызов ng build app (который вызывает @ nrwl / node: build) работает нормально и связывает файл с указанным именем.

Дело в том, что при вызове ng serve app выдается ошибка Cannot find module <path-to-outdir>/main.js. Глядя на код , кажется, что имя файла "main. js" жестко закодировано!

Как мне изменить имя файла out таким способом, которым @ nrwl / node: execute является известно об этом имени файла или есть какой-либо способ настроить сборку / выполнение для принятия пользовательского имени файла?

Спасибо!

Мой angular. json выглядит так:

"service": {
  ...
  "architect": {
    "build": {
      "builder": "@nrwl/node:build",
      "options": {
        "webpackConfig": "apps/service/webpack.config.js",
        "outputPath": "dist/apps/service",
        "filename": "my-main-filename.js", // Note: webpack.config.ts reads this
        "main": "apps/service/src/my-main-filename.ts",
        ...
        }
    },
    "serve": {
          "builder": "@nrwl/node:execute",
          "options": {
            "buildTarget": "service:build"
          },
    }
...

И webpack.config. js

module.exports = (config, context) => {
  // Extract output path from context
  const {
    options: { outputPath, filename },
  } = context;

  config.output = {
    filename: filename,
    path: outputPath
  }
  return config;
};

Версия @ nrwl / node - 9.2.1

...