我正在本地化我的应用程序,这意味着我必须格式化所有数字。目前,我正在为每个语言环境创建如下的语言环境对象:
import d3Format from 'npm:d3-format';
export default d3Format.formatLocale({
"decimal": ",",
"thousands": ".",
"grouping": [3],
"currency": ["", "\u00a0€"]
});
然后我要导入它们,就像这样:
import deDE from '../d3-locales/de-DE';
然后我要进行格式化,就像这样:
let DE = deDE.format("$,.2f");
那很棒!但是,创建所有这些区域设置对象非常烦人。我想从d3本身here导入语言环境:
然后我要这样导入它们:
import deDE from 'npm:d3-format/locale/de-DE.json';
然后,我希望上面的格式化代码能够正常工作;但是,我收到此错误: _deDE.default.format不是函数知道为什么我的对象正在格式化,而d3不是吗?
答案 0 :(得分:0)
您也可以使用d3的unpkg中的d3-json获取这些语言环境:
d3.json("https://unpkg.com/d3-format@1/locale/de-DE.json").then( function(locale) {
d3.formatDefaultLocale(locale);
var format = d3.format("$,.2f");
console.log(format(1289.56));
});
<script src="https://d3js.org/d3.v5.min.js"></script>