Angular CLI 6:未知选项:' - locale'

时间:2018-05-04 14:42:49

标签: angular angular-cli

在新的Angular 6中使用自定义区域设置数据作为文档解释(https://next.angular.io/guide/i18n)运行ng serve,我收到此错误:

Unknown option: '--locale'

delete-output-pathnamed-chunks也是如此。我们现在如何设置这个标志?

3 个答案:

答案 0 :(得分:12)

作为介绍CLI Workspaces的一部分,开发人员已删除了与构建相关的命令行开关,转而在新angular.json文件中配置它们。 在深入研究新模式(可从上面的链接获得)之后,重新引入本地化开关的最简单方法是将它们添加到angular.json内的以下路径中: projects / your-project / architect /建立/选择

然后在没有任何开关的情况下为您的应用提供服务:ng serve

从长远来看,我认为鼓励您自己定义不同的配置并在那里设置这些选项。再次,请参阅架构以获取更多相关信息。

以下是我所做的一个例子:

{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "version": 1,
  "newProjectRoot": "projects",
  "projects": {
    "my-app": {
      "root": "",
      "sourceRoot": "src",
      "projectType": "application",
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-angular:browser",
          "options": {
            "outputPath": "dist",
            "index": "src/index.html",
            "main": "src/main.ts",
            "tsConfig": "src/tsconfig.app.json",
            "polyfills": "src/polyfills.ts",
            "i18nFile": "src/locale/messages.some-lang.xlf",
            "i18nLocale": "some-lang",
            "i18nFormat": "xlf",
            "aot": true,
            "assets": [ ...
            ],
            "styles": [ ...
...

更新

显然有一个PR for the documentation update,它解释了如何做到(几乎我在这里写的方式;-))

答案 1 :(得分:11)

对于记录,--locale也已从ng build移除,但他们引入了angular documentation中指定的--i18n-locale

例如,你可以这样做:

ng build --prod --i18n-locale de --i18n-format xlf --i18n-file src/locale/messages.de.xlf

不幸的是,这不适用于ng serve

答案 2 :(得分:0)

对于Angular 9,以上答案均无效(至少适用于ng serve)。操作方法如下:

打开angular.json文件,转到architect -> build -> options部分。为"i18nLocale": "pt"语言环境添加选项pt。这样会将您应用的默认本地设置为pt