vuejs / vue-loader

📦 Webpack loader for Vue.js components
MIT License
4.99k stars 915 forks source link

为什么在vue3的SFC文件中引入的webcomponents无法渲染出来? #1891

Closed qinhua closed 3 years ago

qinhua commented 3 years ago

场景:vue-cli4 、 vue3.2

问题:在 vue3 的 SFC 文件中引入的 webcomponents 无法渲染出来

详情:通过查看 vue-cli 网站提供的文档,已经在 vue.config.js 中做了如下配置,但是当我在 SFC 中引入 webcomponents 后,组件内部的 shadow-dom 没有渲染,但放到 vue2 里面可以渲染出来。现在只能放在 index.html 中才能使用,这样不灵活。不知道是什么原因导致的,也没有报错。

// vue.config.js
 config.module
      .rule("vue")
      .use("vue-loader")
      .loader("vue-loader")
      .tap((options) => {
        // 排除自定义标签(web-component)
        options.compilerOptions = {
          ...(options.compilerOptions || {}),
          isCustomElement: (tag) => ["web-icas"].includes(tag),
        };
        return options;
      });

SFC组件内容

// login.vue
<template>
  <web-icas page-show="login"></web-icas>
</template>
vue-bot commented 3 years ago

Hello, thank you for taking time filling this issue!

However, we kindly ask you to use our Issue Helper when creating new issues, in order to ensure every issue provides the necessary information for us to investigate. This explains why your issue has been automatically closed by me (your robot friend!).

I hope to see your helper-created issue very soon!


你好,你的 issue 不符合我们所要求的格式,因此已被自动关闭。为了确保每个 issue 都提供必需的相关信息,请务必使用我们的 Issue 向导 来创建新 issue,谢谢!