无880 2022-04-22 19:49 采纳率: 100%
浏览 3010
已结题

Property or method "bm" is not defined on the instance but referenced during render.

The "data" option should be a function that returns a per-instance value in component definitions.Property or method "bm" is not defined on the instance but referenced during render. Make sure that this property is reactive, either in the data option, or for class-based components, by initializing the property.

img

img

img

  • 写回答

1条回答 默认 最新

  • 会飞的咕咕鱼 2022-04-22 20:22
    关注

    意思是data必须是一个方法,如下:

    data(){
          return  {
             //在这里写
          }
    }
    
    

    Vue组件data为什么必须是个函数而Vue的根实例则没有限制的原因是:
    Vue组件可能存在多个实例,如果使用对象形式定义data,则会导致他们共用一个data对象,那么状态变更将会影响所有组件实例,这是不合理的;采用函数形式定义,在initData时会将其作为工厂函数返回全新data对象,有效规避多实例之间状态污染问题。而在Vue根实例创建过程中则不存在该限制,也是因为跟实例只有一个,不用担心这种情况。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月30日
  • 已采纳回答 4月22日
  • 创建了问题 4月22日

悬赏问题

  • ¥15 关于大棚监测的pcb板设计
  • ¥20 sim800c模块 at指令及平台
  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用
  • ¥15 C++ yoloV5改写遇到的问题
  • ¥20 win11修改中文用户名路径
  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计