如何使用动态导入异步导入模块的导出函数并调用它?

时间:2018-06-02 20:31:39

标签: typescript es6-promise typescript2.0 dynamic-import

在promise的异步回调函数

promise.then(async callbackResultValue => { //here })

我试过

const browserd = await import('browser-detect');
if (typeof browserd === 'function') { 
    const browserinfo = browserd();
}

得到:

  

[ts]无法调用类型缺少调用签名的表达式。   输入' never'没有兼容的呼叫签名。

然后我尝试了:

const browserd:Function = await import('browser-detect');

得到:

  

[ts]类型&#39;输入类型(&#34; <path-to-npm-module>&#39;不可分配   输入&#39;功能&#39;。财产&#39;申请&#39;类型&#39; typeof中缺少   进口(&#34; <path-to-npm-module>&#39;

1 个答案:

答案 0 :(得分:0)

我只是在同样的事情上苦苦挣扎,才发现返回的Promise中的对象可能不是函数本身,而是具有名为ListTile( title: Text("$i"), );的属性的对象,其值就是您想要的函数。 / p>

在撰写本文时,我仍然不完全了解导出的所有细微差别,但是这段代码对我有用:

default