0

当我使用 vue-cli-service-build 构建我的 Vue.js 应用程序时,我使用 Internet Explorer 得到一个空白页面(但它适用于 Firefox 和 Chrome)。我知道这个问题与 CKEditor 有关,因为 IE 不支持它。但是,如果我们不使用 IE,我创建了一个仅“需要”CKEditor 的条件。此解决方案适用于 vue-cli-service-serve,但不适用于 vue-cli-service-build。

if(!usingIE())
{
alert("not using ieee");
CKEditor = require('@ckeditor/ckeditor5-vue').component;
ClassicEditor = require('@ckeditor/ckeditor5-build-classic');


}
else
{
alert("using IE");
}

如果我评论“需要”CKEditor 模块并构建应用程序的两行,它适用于 IE。

如果我将 false 放在条件中但不注释这两行,它也适用于 IE。但是,这不是我想要的,因为如果用户使用 Chrome/Firefox,我需要允许他们使用 CKEditor。

if(false)
{
alert("not using ieee");
CKEditor = require('@ckeditor/ckeditor5-vue').component;
ClassicEditor = require('@ckeditor/ckeditor5-build-classic');
}

我想知道我是否使用正确的方法来包含浏览器不支持的模块。否则,最好的方法是什么?

4

1 回答 1

0

您可以尝试使用v-ifv-else块来有条件地渲染组件。

例子:

<div v-if="type === 'A'">
  A
</div>
<div v-else-if="type === 'B'">
  B
</div>
<div v-else-if="type === 'C'">
  C
</div>
<div v-else>
  Not A/B/C
</div>

参考:

(1)条件渲染

(2)条件组件渲染

(3) Vue.js 路由器 - 条件组件渲染

于 2019-04-24T03:18:37.323 回答