当前位置: 首页 > Web前端 > HTML5

Chrome63正式支持动态导入-Dynamicimport()

时间:2023-04-05 15:09:29 HTML5

dev-reading/fe是一个阅读、导读、速读的仓库。不要依赖dev-reading/fe学习知识。本repo只是一个快速了解文章内容的工具,不提供全文解读和翻译。您可以通过本平台快速了解文章内容,找到您感兴趣的文章,然后阅读全文。本文地址:https://github.com/dev-readin...阅读时间约1分钟浏览器支持:Chrome63、Safari24预览版TC39提案:https://github.com/tc39/propo。..Stage:3specifications:https://tc39.github.io/propos...静态导入Chrome61开始支持ES2015模块。导入的模块必须是字符串文字,而不是变量。因为导入是在编译时(运行前)确定的,比运行时早。下面的代码会报错:if(name==='jjc'){importmyNamefrom'./jjc';}else{importmyNamefrom'./other';}下面的代码也会报错:constname='jjc';从名称中导入myName;静态导入可以在编译阶段对代码进行静态分析、构造、tree-shaking等。Dynamicimport()动态导入可以让我们导入按需导入等特性。语法:import(moduleSpecifier)import()返回一个Promise注意:虽然import()看起来像是函数调用,但实际上import只是恰好使用了括号语法(类似于极好的())。也就是说import没有继承自Function.prototype,所以不能使用call和apply。使用constimportAlias=import也不行。甚至,import根本就不是一个对象!建议“静态导入”和“动态导入()”同样重要。使用静态导入在运行前构建模块的依赖关系,使用动态导入在运行时按需加载模块。阅读原文:动态导入()讨论地址:动态导入()想参与讨论的请点这里