VUE data传值

举报
tea_year 发表于 2021/12/30 01:09:42 2021/12/30
【摘要】 data 必须是一个函数 上面例子中,可以看到 button-counter 组件中的 data 不是一个对象,而是一个函数: data: function () { return { count: 0 }} 这样的好处就是每个实例可以维护一份被返回对象的独立的拷贝,如果 data 是一个对象则会影响到其他实例,如下所示...

data 必须是一个函数

上面例子中,可以看到 button-counter 组件中的 data 不是一个对象,而是一个函数:


  
  1. data: function () {
  2. return {
  3. count: 0
  4. }
  5. }

这样的好处就是每个实例可以维护一份被返回对象的独立的拷贝,如果 data 是一个对象则会影响到其他实例,如下所示:


  
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>v-on-data事件</title>
  6. <script src="js/vue.js"></script>
  7. </head>
  8. <body>
  9. <div id="components-demo">
  10. <button-counter></button-counter>
  11. <button-counter></button-counter>
  12. <button-counter></button-counter>
  13. </div>
  14. <script>
  15. var buttonCounter2Data={count:0}
  16. Vue.component('button-counter',{
  17. data:function(){
  18. //data选项是一个对象,会影响到其他实例;
  19. return buttonCounter2Data
  20. },
  21. template:'<button v-on:click="count++">点击了{{count}}次</button>'
  22. })
  23. new Vue({
  24. el:'#components-demo'
  25. })
  26. </script>
  27. </body>
  28. </html>

 

 

文章来源: aaaedu.blog.csdn.net,作者:tea_year,版权归原作者所有,如需转载,请联系作者。

原文链接:aaaedu.blog.csdn.net/article/details/86589306

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。