开发者问题收集

将自制的 Vue 3 库导入 Vue 3 项目时:“未捕获的 TypeError:无法读取 null 属性(读取‘isCE’)”

2022-02-10
3309

我使用 Vue 3 创建了一个自定义组件库,在通过 yarn 本地安装并注册组件后,在浏览器 devtools 中使用模板中的组件时,一直出现以下错误:

Uncaught TypeError: Cannot read properties of null (reading 'isCE')

研究该问题后,发现 Vue 社区提出的 解决方案 不起作用。我在两个项目上运行的是同一个 Vue 3 版本。我按照步骤创建并修改 vue.config.js 以作为 Vue 的别名并禁用符号链接,但无济于事。

module.exports = {
  chainWebpack(config) {
    config.resolve.symlinks(false);
    config.resolve.alias.set("vue", path.resolve("./node_modules/vue"));
  },
};

我沿着兔子洞走下去,但得出的结论都是一样的:要么修改 vue.config.js 有效,要么找不到解决方案。该问题(主要)似乎出在带有插槽的组件上。

2个回答

尝试使用 vite 而不是 vue-cli 来创建您的自定义库。并让您的 vue 停留在 Package.json 中的 devDependencies

Alex Xie
2022-03-21

对于我来说,这个解决方案在 vite.config 中解决了这个问题

resolve: {
        alias: {
          vue: path.resolve('./node_modules/vue'),
        },
        dedupe: ['vue'],
      },
Gabriel Caiana
2022-04-21