首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VueJs/Nuxt过滤数组,错误_vm.filtered..不是函数

VueJs/Nuxt过滤数组,错误_vm.filtered..不是函数
EN

Stack Overflow用户
提问于 2020-03-26 21:49:31
回答 2查看 298关注 0票数 1

我是Vue/Nuxt的新手,尝试过滤一个数组。

代码语言:javascript
复制
computed: mapState({
  entries: state => state.archives.archives
}),

filteredArchive, function (objects, key) {

  if (objects) {
    return objects.filter(function(object) {
      return object.tag === key
    })
  }

我想在一个循环中得到结果:

代码语言:javascript
复制
<li v-for="(entry, index) in (entries | filteredArchive('test'))">{{ entry.title }}</li>

此操作失败..我的方法出了什么问题..

谢谢你的帮助。

EN

回答 2

Stack Overflow用户

发布于 2020-03-26 21:52:54

我建议为"filteredArchive“创建一个计算属性,而不是过滤器。事实上,我相信过滤器会在Vue 3中消失。如果你需要在组件之间共享逻辑,你可以把它放在一个mixin中。

票数 0
EN

Stack Overflow用户

发布于 2020-04-01 20:08:48

好的。这是我目前的解决方案:

代码语言:javascript
复制
<ul>
    <li v-for="(entry, index) in filteredByTag(entries, 'test')">
      <nuxt-link :to="'archive/' + entry.id">{{ entry.title }}</nuxt-link>
    </li>
  </ul>

computed: mapState({
  entries: state => state.archives.archives,
}),

methods: {
  filteredByTag(entries, tag){
    return entries.filter((entry) => {
      return entry.tag.match(tag)
    })
  }
},
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60868828

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档