繁体   English   中英

使用typescript和webpack进行代码拆分

[英]Code splitting with typescript and webpack

我想使用webpack提供的代码拆分功能,以便创建我的应用程序的几个捆绑包,使用typescript开发,并按需加载它们。 我一直在寻找一个解决方案,我找到的最接近的答案就是这个: https//github.com/TypeStrong/ts-loader/blob/master/test/execution-tests/babel-codeSplitting /require.d.ts

此示例直接从官方ts-loader文档中获取,它显示了如何依赖require.ensure来创建分割点。

让我烦恼的是,打字稿中没有一种简单的方法可以做到这一点。 必须在typescript中直接调用require.ensure函数。 需要提供以下声明文件以允许typescript以静默方式摘要该调用:

declare var require: {
    <T>(path: string): T;
    (paths: string[], callback: (...modules: any[]) => void): void;
    ensure: (paths: string[], callback: (require: <T>(path: string) =>   T) => void) => void;
};

是否有更优雅的方式来实现相同的结果?

是否有更优雅的方式来实现相同的结果

不可以。各种运行时具有不同的(不一致的)API,用于按需加载模块。 所以TypeScript选择在这里是不可知的。

更多

关于延迟加载的一些注意事项及其在类型安全方面的工作原理: https//basarat.gitbooks.io/typescript/content/docs/project/external-modules.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM