Vue官方网站的一个困惑

时间:2018-03-22 08:03:10

标签: vue.js

enter image description here

为什么这个"价值"不能写成" pricevalue"或其他,否则输入将不会转换非数字值

1 个答案:

答案 0 :(得分:0)

props元素中,您将定义组件将附加到的属性。你可以随意打电话给他们。你需要清楚几件事......

  • 您定义了名称here in camelCase,但是当您在父标记中调用该组件时,请使用kebab-case。

  • methods仅在被调用时运行。如果您将格式设置在下游端(接收值并显示它),则所有内容都将被激活,并且所有值都应正确显示。只要源值发生变化,它就会正常工作。那么你在计算中的格式是这样的......

<强> JS

computed: {
    formattedPriceValue(){
        return Number.parseFloat(this.priceValue).toFixed(2)
    }
}

你也可以内联...

<强>标记

<input type="number" :value="Number.parseFloat(priceValue).toFixed(2)">

您要发出的值可能是Number.parseFloat @change="$emit('price-changed', Number.parseFloat(event.target.value))"的未格式化输出

然后,如果使用Number functions provided进行数字格式设置,您的寿命会更长。

另外,为什么不使用由反引号分隔的新模板(多行)字符串。它们比你正在使用的续行角色更清晰。

PS。我喜欢在代码中看到中文(?)注释。我已将它们复制并粘贴到我的代码中。我希望没有咒骂。 Unicode摇滚。