3

Я хочу использовать CurrencyValueConverter, как в aurelia.io documentation, но локализуя результат на голландский или Немецкий, но я не знаю, как сделать все доступные для цифр.импортировать все языки для numeral.js в es2016 для Aurelia pp

Я могу импортировать Ducth локаль о загрузить его в явном виде следующим образом:

import numeral from 'numeral'; 
import nl from "numeral/languages/nl-nl"; 

export class CurrencyValueConverter { 
    toView(value, language = "nl-nl") { 
    numeral.language(language, nl); // this line loads the nl language definition 
    numeral.language(language); 
    return numeral(value).format("$0,0.00"); 
    } 
} 

Но, конечно, это работает только для одного языка. Как я могу загрузить несколько языков, избегая при этом что-то вроде

if(language === "nl-nl") 
    numeral.language(language, nl); 
else if(language === "de-de") 
    // etc 

ответ

4

Here's an example: https://gist.run?id=6af6cf41d4f8dc206aaa

app.html

<template> 
    <require from="./currency-value-converter"></require> 

    <label> 
    Language: 
    <select value.bind="selectedLanguage"> 
     <option repeat.for="language of languages" value.bind="language">${language}</option> 
    </select> 
    </label> 

    <h1>${value | currency:selectedLanguage}</h1> 
</template> 

app.js

export class App { 
    value = 1234567.890123; 
    selectedLanguage = 'nl-nl'; 
    languages = [ 
    'en-gb', 
    'es', 
    'et', 
    'fi', 
    'fr', 
    'fr-CA', 
    'fr-ch', 
    'hu', 
    'it', 
    'ja', 
    'nl-nl', 
    'pl', 
    'pt-br', 
    'pt-pt', 
    'ru', 
    'ru-UA', 
    'sk', 
    'th', 
    'tr', 
    'uk-UA', 
    'be-nl', 
    'chs', 
    'cs', 
    'da-dk', 
    'de', 
    'de-ch']; 
} 

валюты оценочного converter.js

import numeral from 'numeral'; 
import 'numeral/min/languages.min'; 

export class CurrencyValueConverter { 
    toView(value, language = 'nl-nl') { 
    numeral.language(language); 
    return numeral(value).format('$0,0.00'); 
    } 
} 
+0

я попробовал этот подход, как хорошо, но я получаю 'Необработанного отказ обещания об ошибке: Неизвестном языке: п-NL (...)' и я не очень посмотрите, что я делаю иначе, чем вы, например :( –

+0

посмотрите на вкладку сети и отфильтруйте на 'numeral/min/languages.min' ... она успешно загружена? Также можно попробовать 'jspm uninstall numeral; jspm install numeral;' –

+0

'languages.min' загружается правильно и переустановка' цифр', похоже, не помогает. –

Смежные вопросы