2017-09-15 12 views
5

Tôi đang cố gắng sử dụng các tính năng quốc tế hóa của Syncfusion EJ2 trong Angular-Cli với WebPack, có vấn đề bởi vì tất cả tài liệu đều sử dụng SystemJs.Quốc tế hóa trong Syncfusion Ej2 với WebPack

Đặc biệt tôi đang cố gắng để sử dụng mẫu này http://plnkr.co/edit/4uA2rb0Q2FrLLK6V4sne

import { L10n, loadCldr, setCulture, setCurrencyCode } from '@syncfusion/ej2-base'; 
import * as currencies from './currencies.json'; 
import * as cagregorian from './ca-gregorian.json'; 
import * as numbers from './numbers.json'; 
import * as timeZoneNames from './timeZoneNames.json'; 
import * as numberingSystems from './numberingSystems.json'; 
import { Component, OnInit } from '@angular/core'; 
import { data } from './datasource'; 

loadCldr(currencies, cagregorian, numbers, timeZoneNames, numberingSystems); 

setCulture('de-DE'); 
setCurrencyCode('EUR'); 

tôi đã cố gắng nhưng không thể làm cho nó để làm việc, tôi bị mắc kẹt về lỗi này: Không thể tìm thấy mô-đun' ./numberingSystems. json '

Tôi nên thực hiện những thay đổi nào đối với mẫu?

Trả lời

8

Để nhập tệp json vào bản ghi, chúng tôi cần đưa loại json vào khai báo mô-đun thẻ ký tự đại diện (https://www.typescriptlang.org/docs/handbook/modules.html#wildcard-module-declarations). Sử dụng mã khai báo bên dưới trong tệp typings.d.ts để giải quyết vấn đề biên dịch.

declare module "*.json" { 
    const value: any; 
    export default value; 
} 

Lưu ý: Bạn cũng có thể sử dụng tệp jd cldr bằng cách cài đặt gói dữ liệu cldr npm. Gói này chứa tất cả các tệp văn bản json.

+0

Hiện hoạt động như mong đợi, cảm ơn. Tôi đã cài đặt gói dữ liệu clrd, tôi đang nhập các tệp theo cách này nhập * dưới dạng số từ '../../node_modules/cldr-data/main/es-AR/numbers.json'; Có cách "tốt hơn"? –

+0

Các tệp JSON cũng có thể được nhập bằng cách sử dụng yêu cầu như được đề cập trong đoạn mã bên dưới. loadCldr (yêu cầu ('../../ node_modules/cldr-data/main/de/numbers.json')); Để sử dụng yêu cầu trong ứng dụng anguar-cli, chúng tôi cần khai báo yêu cầu trong tệp typings.d.ts như bên dưới đoạn tuyên bố yêu cầu var: bất kỳ; –

Các vấn đề liên quan