封装d3的data.format功能遇到问题

发布于 2022-09-01 19:00:27 字数 1252 浏览 26 评论 0

在使用c3.js的tooltip.format.value功能的时候碰到一些问题,需要自己封装一个函数,DOM中直接呈现一个下拉列表,用户可以选择值来设定format
有四个选项,$,千位符,精确到小数点两位或者其他位,同时设置$和千位符($6789,000)

clipboard.png

clipboard.png

框架用的是angularjs,我在directive指令里面封装了一个函数

function dataFormat() {
                var tooltipFormatValue = [];
                tooltipFormatValue[0] = {'$':d3.format("$")};
                tooltipFormatValue[1] = {'thousands separator':d3.format("s")};//千位符
                tooltipFormatValue[2] = {'precision':d3.format(".2f")};//精确小数点后面两位
                tooltipFormatValue[3] = {'$ and thousands separator': d3.format("$ | currency: $")};//带$和千位符
                console.log(tooltipFormatValue)
                d3.format = {
                  value: function(value,id,name) {
                    var format = id === name ? d3.format(','):d3.format(',');
                    return format(value);
                  }
                }
              }

**1.怎么同时设定$和千位符格式?
2.不知道我的函数思路对不对,目前思绪很混乱**

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

つ低調成傷 2022-09-08 19:00:27

1.怎么同时设定$和千位符格式?
d3.format('$,')(value)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文