Javascript Vue.js转义双冒号
下面显示的代码是用vue.js编写的 有没有可能创建一个mailto-链接?Javascript Vue.js转义双冒号,javascript,vue.js,escaping,Javascript,Vue.js,Escaping,下面显示的代码是用vue.js编写的 有没有可能创建一个mailto-链接?Vue不喜欢mailto:item.url中的双冒号: Vue.component('my-component', { props: ['item'], template: ` <div class="foo"> <a v-bind:href="mailto:item.url"> {{ item.url }} </a> &
Vue不喜欢
mailto:item.url
中的双冒号:
Vue.component('my-component', {
props: ['item'],
template: `
<div class="foo">
<a v-bind:href="mailto:item.url">
{{ item.url }}
</a>
</div>
`
});
Vue.component('my-component'){
道具:['item'],
模板:`
`
});
我刚刚发现以下代码是有效的:
v-bind:href="'mailto:' + item.mail"
我刚刚发现以下代码是有效的:
v-bind:href="'mailto:' + item.mail"
Vuejs没有逃过双冒号。您在
v-bind:href=“…”
中编写的不是字符串,而是javascript代码
mailto:item.url
不是有效的javascript代码。因此,您必须使用语言工具构造一个字符串
构造该字符串的另一种解决方案:
v-bind:href
。您可以使用速记:href
。这更标准、更可读<a :href="`mailto:${item.url}`">
您是否认为使用模板文字有助于提高代码的可读性,这取决于您个人的喜好
当您使用简单的模板形式时,这种情况可能更具争议性。
使用已配置的时,可读性更高。Vuejs没有逃逸双冒号。您在v-bind:href=“…”
中编写的不是字符串,而是javascript代码
mailto:item.url
不是有效的javascript代码。因此,您必须使用语言工具构造一个字符串
构造该字符串的另一种解决方案:
使用ES6-cleaner语法
您不必显式声明v-bind:href
。您可以使用速记:href
。这更标准、更可读
参见代码:
<a :href="`mailto:${item.url}`">
您是否认为使用模板文字有助于提高代码的可读性,这取决于您个人的喜好
当您使用简单的模板形式时,这种情况可能更具争议性。
使用已配置的时,可读性要高得多。模板
-属性已在我的代码示例中使用模板文本。那么我们如何在模板文字中使用模板文字呢?在答案中添加了对该注释的引用。基本上这是可能的,您可以看到一个指向另一个stackoverflow问题的链接,询问它。template
-属性已经在我的代码示例中使用了模板文本。那么我们如何在模板文字中使用模板文字呢?在答案中添加了对该注释的引用。基本上这是可能的,你可以看到一个链接到另一个stackoverflow问题询问它。如果你已经在模板文本中,这个解决方案是有效的。如果你看这个问题,情况就是这样。如果你已经在模板文本中,这个解决方案是有效的。如果你看这个问题,情况就是这样。