导入可能不存在的es6模块

jax*_*jax 7 ember-cli

只是说我创建了一个与其他用户共享的插件,我需要导入ember-data.

import DS from 'ember-data';
Run Code Online (Sandbox Code Playgroud)

如果它可能不存在于客户端代码中,我该如何导入它.基本上我需要一个条件来检查ember-data是否可用,如果是这样导入并执行某些操作,否则不要这样做.

if(ember data exists) {
  //do something
}
Run Code Online (Sandbox Code Playgroud)

Jac*_*kCA 1

我对一般 es6 用法有同样的问题,但假设您使用 ember-cli 您可以查看该require._eak_seen对象,这样您的代码可能看起来像这样:

if(require._eak_seen['ember-data']){
  //your code
}
Run Code Online (Sandbox Code Playgroud)