javascript - 在 Vue 中编译内联文本字符串

标签 javascript vue.js

我正在用 Vue 构建一个简单的应用程序。这很简单,我没有使用组件。

我将我的文本字符串存储在一个配置对象中,因此它们很容易更改:

var config = {
    orderInvalid: "Order {{ order.id }} is invalid"
}

在 Vue 对象中,我将该数据推送到一个通用错误变量中:

if(orderInvalid(orderNumber)){
    this.errorMessage = config.orderInvalid;
}

我的 HTML 显示此错误:

<h1>{{ this.errorMessage }}</h1>

问题是它没有解析 {{ order.id }} 并按字面显示该字符串。有没有解决的办法?我需要 {{ order.id }} 作为实际的订单 ID。我正在查看 vue.compile 但它抛出了各种关于缺少根元素的错误。我猜它是为组件设计的?

最佳答案

你的 orderInvalid var config的属性(property)object 是一个字符串 "Order {{ order.id }} is invalid"

所以当你使用 <h1>{{ this.errorMessage }}</h1>你只是在使用 <h1>{{ "Order {{ order.id }} is invalid" }}</h1>

所以我推荐使用这个:

var config = {
    orderInvalid: function(orderId){
        return "Order " + orderId + " is invalid"
    } 
} 

然后

if(orderInvalid(orderNumber)){
    this.errorMessage = config.orderInvalid(orderNumber);
}

关于javascript - 在 Vue 中编译内联文本字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44240302/

相关文章:

javascript - 使用 Protractor 自动生成用于测试表单的字段值

Javascript 框阴影

css - 通过添加父类,作用域 CSS 和 "scope"之间的区别

vue.js - Vuex、vue-router 和处理页面重新加载 (F5)

javascript - 类中的交替行排除在 jquery 中不显示

javascript - 在 cookie 中存储单选按钮的值在其他浏览器 (Firefox) 中不起作用,但在 Chrome 中起作用

javascript - 打开前 Jquery UI Accordion 折叠

vue.js - 为什么 axios get 方法请求发送两次?

javascript - 将图像源传递到 Vue.js 中的作用域槽

vue.js - vuejs 中模态关闭时的操作