报错 Cannot read properties of undefined (reading ‘propsData‘)“ ?

使用 vue 在引入 antd 有关于菜单的组件时一直报错,其他无关 menu 的组件都能够正常显示,这个 bug 困扰了我好久,最终在 GitHub 上找到了解决问题的方法。

报错信息如下:

报错 Cannot read properties of undefined (reading ‘propsData‘)“ ?_第1张图片

问题描述:

我一开始是这样引入的:

import Vue from 'vue'
import { Menu, Layout, Icon, Breadcrumb } from 'ant-design-vue' // 按需引入组件并注册
Vue.use(Layout)
export default {

  components: {
    'a-menu': Menu,
    'a-icon': Icon,
    'a-breadcrumb': Breadcrumb,
    'a-breadcrumb-item': Breadcrumb.Item
  },

然后浏览器一直报错,通过查看浏览器控制台的报错信息也大概知道是少了 ASubMenu 和 AMenuItem 的缘故,因此我就引入,但是都没反应,所以就觉得不是这个的问题,之后一直问度娘也没找到可以解决的办法,最终在 GitHub 上面才发现是自己引入的方式不对。

正确做法应该是在component 中这样引入:

     components: {
    'a-menu': Menu,
    'a-icon': Icon,
    'a-breadcrumb': Breadcrumb,
    'a-breadcrumb-item': Breadcrumb.Item,
    ASubMenu: Menu.SubMenu,
    AMenuItem: Menu.Item
  },

最后,附上页面源码供参考:





你可能感兴趣的:(bug记录,vue.js,前端,javascript)