vuejs怎样过滤对象数组取值?

我想按条件取值,只取出type=== 'SINGLE_CHOICE'的值。
我用的方法是:
image.png
如下图:
得到的结果是:
image.png

我总感觉这样写不对。为什么过滤了。符合条件的只有2条。为什么长度还是原始的9条呢?只是显示的是未定义

阅读 5.3k
2 个回答
  1. 因为你用的是 .map()(映射),应该用 .find()(查找)
  2. 建议把数据存下来,然后在 computed 里输出你想要的
                        this.ruleForm.singleChoiceData = arr.filter(item => {
                            return item.type === 'SINGLE_CHOICE';
                        });

image.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题