ExtJS 7.3 中没有可用的 ext-locale 包

No ext-locale package available in ExtJS 7.3

由于某些奇怪的原因,我收到了这个错误:

Cannot satisfy requirements for "ext-locale"! [ERR] The following versions cannot be satisfied: [ERR] App: ext-locale (No matches!) [ERR] Cannot resolve package requirements

根据官方说明,我将要求添加到 app.json

"classic": {
        "requires": [
            "ext-locale"
        ]
    },

我正在使用通用模板:

"template": "universalclassicmodern"

我看了@sencha/ext-classic/ 但我在那里看不到语言环境目录。

我必须通过 npm 手动安装软件包吗?

如果您使用 ClassicModern 模板: 尝试像这样更改代码。 打开 app.json 文件,全局要求。

"requires": [
        "font-awesome",
        "locale"
    ],
"locale":"zh_CN",  //!!!Your localization parameters

配置特定的构建选项

"production": {
        "requires": [
            "locale"
        ],
        "locale":"zh_CN", //!!!Your localization parameters
        ...
},
"testing": {
    "requires": [
        "locale"
    ],
    "locale":"zh_CN",  //!!!Your localization parameters
    ...
},
"development": {
    "requires": [
        "locale"
    ],
    "locale":"zh_CN",  //!!!Your localization parameters
    ...
},

如果您使用通用模板,请尝试更改this.Open app.json文件中的代码,在全局要求中。

"requires": [
        "font-awesome",
        "locale"
    ],
"locale": "zh_CN",  //!!!Your localization parameters

然后根据官方文档,在Classic和Modern节点下的“requires”中添加“ext-locale”

"classic": {
     "requires": [
        "ext-locale"
     ],
     "locale": "zh_CN",  //!!!Your localization parameters
     .....
},
"modern": {
     "requires": [
         "ext-locale"
      ],
      "locale": "zh_CN",  //!!!Your localization parameters
      ...
}

我终于找到了解决方案:

如果你通过 npm 安装 ExtJS,比如:

ext-gen app -a -t universalclassicmodern -n myApp

您需要单独安装本地化包:

npm i @sencha/ext-classic-locale
npm i @sencha/ext-modern-locale

而在 app.json 中,您只需要这些有关本地化的设置:

"locale": "es", // <-- Your locale here
    "requires": [      
        "ext-locale"
    ],...

似乎您不需要为每个 build/tookit 指定语言环境。

本指南应该更新并解释一下: https://docs.sencha.com/extjs/7.4.0/guides/core_concepts/localization.html