0

我正在尝试创建一个支持 L10n 的 Angular 4 项目。我正在尝试在我的项目中使用Globalize库。但是在编译我的项目时我遇到了很多错误。我不想使用 globalize-webpack-plugin 或更改我的webpack 配置文件。我安装了 globalize 使用npm install globalize cldr-data。但是当我尝试在我的 .ts 文件中使用 globalize 时,就像import Globalize from 'globalize'我得到错误一样cant resolve cldr

import { Component,OnInit} from '@angular/core';
import * as cldr from 'cldrjs';
import Globalize from 'globalize';
var globalize = new Globalize( "en" );
console.log(globalize);

ERROR in ./~/globalize/dist/globalize.js
Module not found: Error: Can't resolve 'cldr'

我被困在这一点上。感谢任何帮助

4

2 回答 2

2

将以下内容添加到您的 Webpackconfig 文件中:

  resolve: {alias: {'cldr$': 'cldrjs', 'cldr': 'cldrjs/dist/cldr'}}
于 2020-10-22T20:45:28.097 回答
2

您需要在文件中添加路径globalizecldr模块,tsconfig.json如下所示:

{
  ...
  "compilerOptions": {
    ...
    "paths": {
      "globalize": [
        "node_modules/globalize/dist/globalize"
      ],
      "globalize/*": [
        "node_modules/globalize/dist/globalize/*"
      ],
      "cldr": [
        "node_modules/cldrjs/dist/cldr"
      ],
      "cldr/*": [
        "node_modules/cldrjs/dist/cldr/*"
      ],
      "jszip": [
        "node_modules/jszip/dist/jszip.min.js"
      ]
    }
  }
}

参考: https ://github.com/DevExpress/devextreme-angular/blob/master/docs/setup-3rd-party-dependencies.md#globalize-registration

于 2018-09-12T13:40:08.113 回答