使用vue.js,如果项目的数量小于1,我尝试禁用按钮。
<div v-repeat = "item: itemsList">
<button v-attr="disabled: {{item.qty}} < 1"> Click </button>
......
它不起作用,根本没有显示任何内容。但是,当我放置一个正常的表达式时:
<div v-repeat = "item: itemsList">
<button v-attr="disabled: 0 < 1"> Click </button>
......
它正常运作!
任何人都能解释为什么我不能在我的情况下使用该物业吗?有没有办法做到这一点?
答案 0 :(得分:0)
答案 1 :(得分:0)
您的代码无效,因为laravel与{{}}语法冲突,但因为在v-attr指令中您不需要该值的句柄语法,因为它将直接评估表达式。
如果您使用laravel并且需要在括号内显示某些内容,请使用@ {{}}。 &#39; @&#39;告诉刀片服务器忽略该表达式,以便vue实例可以处理它。
答案 2 :(得分:0)
为了对Ivan的答案进行补充,语法已经改变,所以我相应地更新了小提琴:http://jsfiddle.net/yMv7y/1734/
<div id="demo" v-for="item in itemlist">
<button :disabled="item.qty < 1"> Click</button>
</div>
[编辑]现在适用于Vue 2.0 +
<div id="demo">
<button v-for="item in itemlist" :disabled="item.qty < 1"> Click</button>
</div>