computed和methods问题
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="./第三章源码/3-7/vue/vue.js"></script> </head> <body> <div id="root"> <ul> <li v-for="user in shouldShowUsers" :key="user.id">{{ user.name }}</li> </ul> </div> <script> var vm = new Vue({ el: '#root', data: { users: [ { id: 1, name: 'a', show: true }, { id: 2, name: 'b', show: true }, { id: 3, name: 'c', show: false }, { id: 4, name: 'd', show: true }, { id: 5, name: 'e', show: false } ] }, methods: { shouldShowUsers: function () { return this.users.filter(function (user) { return user.show }) } }, }) </script> </body> </html>
当用computed时就能渲染出数据,用methods时就没有数据,为啥啊?
18
收起
正在回答
1回答
同学你好,因为computed中存放的是属性,使用时直接通过属性名获取即可,但是methods中存放的是方法,使用时需要添加括号调用方法才可以。
示例:同学的代码,在使用shouldShowUsers方法时,添加一个括号即可
如果我的回答帮助到了你,欢迎采纳,祝学习愉快~
4.Vue与React高级框架开发
- 参与学习 人
- 提交作业 239 份
- 解答问题 10739 个
本阶段带你深入前端开发的肌理,通过ES6基础知识和前端主流高级框架的学习,助你快速构建企业级移动webAPP应用,进入职场的终极battle
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星