Vue.js 检查vuejs中是否存在值

Vue.js 检查vuejs中是否存在值,vue.js,vue-resource,Vue.js,Vue Resource,我有数据:1,2,3,4,4,5&我的代码如下: <div id="looping" v-for="display in editlistAssesments"> {{display.test_id}} </div> <div id="looping" v-for="display in editlistAssesments"> <span v-text="display.test_id | ifInArray"></span&

我有数据:1,2,3,4,4,5&我的代码如下:

<div id="looping" v-for="display in editlistAssesments">
  {{display.test_id}}
</div>
<div id="looping" v-for="display in editlistAssesments">
    <span v-text="display.test_id | ifInArray"></span>
    <!-- bind Vue value to html element is better practice -->
</div>

如何在循环vueJs中执行此操作…?

据我所知,您想检查值是否在数组中,然后相应地渲染它吗

如果是这样,您需要一个Vue自定义过滤器。像这样的东西可以达到目的:

var vm = new Vue({
    el: 'body',

    data: {
        editlistAssesments: [1,2,3,4,4,5]
    },

    filters: {
        ifInArray: function (value) {
            return this.editlistAssesments.indexOf(value) > -1 ? 'Yes' : 'No';
        }
    },
});
然后像这样使用它:

<div id="looping" v-for="display in editlistAssesments">
  {{display.test_id}}
</div>
<div id="looping" v-for="display in editlistAssesments">
    <span v-text="display.test_id | ifInArray"></span>
    <!-- bind Vue value to html element is better practice -->
</div>

查看文档以了解更多信息:


在我看来,最好的办法是:

<div id="looping" 
     v-for="display in editlistAssesments">
    <span v-if="typeof display.test_id !== 'undefined'">
        {{display.test_id}}
    </span>
</div>

{{display.test_id}

因为如果使用
v-if=“display.test\u id”
并且
test\u id
值为
0
(布尔比较),您将永远看不到
display.text\u id

,但php中的数组开始为空。我不太明白你想做什么…你的数据在JS中是什么样子的?