动态导入表达式

    此外,webpack bundler 有一个 的功能,它能允许你将代码拆分为许多块,这些块在将来可被异步下载。因此,你可以在程序中首先提供一个最小的程序启动包,并在将来异步加载其他模块。

    这很自然的想到(如果我们工作在 webpack dev 的工作流程) 将会把你最终生成的 JavaScript 代码自动分割成很多块。但是这似乎并不容易实现,因为它依赖于我们正在使用的 tsconfig.json 配置文件。

    让我们来看一个例子,在这个例子中,我们演示了如何配置 webpack 和 TypeScript 2.4 +。

    如下例子,我希望懒加载 moment 库,同时我也希望使用代码分割的功能,这意味 moment 会被分割到一个单独的 JavaScript 文件,当它被使用时,会被异步加载。

    1. {
    2. "compilerOptions": {
    3. "target": "es5",
    4. "lib": [
    5. "dom",
    6. "es5",
    7. "scripthost",
    8. ],
    9. "jsx": "react",
    10. "declaration": false,
    11. "sourceMap": true,
    12. "outDir": "./dist/js",
    13. "moduleResolution": "node",
    14. "typeRoots": [
    15. ],
    16. "types": [
    17. "node",
    18. "react",
    19. "react-dom"
    20. ]
    21. }

    重要的提示