Javascript 逗号十进制值的vue指令绑定值问题

Javascript 逗号十进制值的vue指令绑定值问题,javascript,vuejs2,vue-directives,Javascript,Vuejs2,Vue Directives,我的html代码是这样的==> 我的vue指令是==> Vue.directive("fraction-superscriptor", function (el, binding) { let number = !isNaN(parseFloat(binding.value)) ? parseFloat(binding.value).toFixed(2) : 0; number = parseFloat(number).toLocaleString(el.dataset.language

我的html代码是这样的==>

我的vue指令是==>

Vue.directive("fraction-superscriptor", function (el, binding) {

let number = !isNaN(parseFloat(binding.value)) ? parseFloat(binding.value).toFixed(2) : 0;

number = parseFloat(number).toLocaleString(el.dataset.language || "nl-nl", { useGrouping: false, minimumFractionDigits: 2 });
});
但我总是得到310.66作为一个值,而不是1310.66。当我检查绑定时,我得到了这个

def: {bind: ƒ, update: ƒ}
expression: "1,310.66"
modifiers: {}
name: "fraction-superscriptor"
rawName: "v-fraction-superscriptor"
value: 310.66

如何解决这个问题?它只会对大于1000的数字产生问题。

v-fraction-superscriptor=“1310.66”
中,
“1310.66”
作为javascript表达式进行计算。逗号(,)是一个有效的javascript,这就是它在计算表达式后返回“310”的原因。 在您的情况下,像这样将其作为字符串传递,您将获得正确的值

v-fraction-superscriptor="'1,310.66'"