Vue.js 1.0.15 过滤列表无法读取未定义的属性

Vue.js 1.0.15 filtering lists cannot read property of undefined

本文关键字:读取 未定义 属性 列表 js 过滤 Vue      更新时间:2023-09-26

按照过滤列表的基本示例(在此处找到:https://laracasts.com/series/learning-vue-step-by-step/episodes/14),使用limitBy 我卡在以下错误上:

Uncaught TypeError: Cannot read property 'slice' of undefined

这是我的标记:

<div v-for="product in products | limitBy 2"> ... </div>

这是我的产品Ajax调用(产品拉进来就好了):

fetchProducts: function() {
        this.$http.get('api/internal/products', function(products) {
            this.$set('products', products);
        });
    } 

我的产品被拉入没有问题,但是一旦我尝试添加过滤器,我就会收到此控制台错误

您应该将产品实例化为空数组以启动。 在你的 Vue 组件中:

data:function(){
    return {
        products:[]
    }
}

这样,它就不会在等待 ajax 请求时尝试对未定义的变量运行 limitBy 过滤器。