在 javascript 库项目中使用异步模块加载

Using Asynchronous Module load in javascript library project

我正在开发一个 javascript 项目,该项目将作为第三方库提供。

而且有很多模块和模板,如果一次加载它们很浪费时间和性能。所以我认为使用像 requirejs 这样的模块加载器可能是个好主意。

但是项目要给其他人使用,客户端同时使用requirejs如何?

因为我必须为自己的库配置依赖,而客户需要为他的项目配置依赖。恐怕这会引起一些冲突。

还有其他选择吗?

And there are a lot of modules and templates which is a waste of time and performance if loading them all at once.

听起来您选择不使用 r.js 来优化您的图书馆。这是您可以做出的选择。但是,您必须记录您的库,以便使用它的人可以生成一个 RequireJS 配置,该配置将处理他们自己的代码的需求和您的库的需求。您应该提供一个满足您的库的 RequireJS 配置示例,想要使用它的人可以将该配置与他们自己的配置集成。

如果r.js优化你的库,那么你可以用Almond加载您的库作为一个单元,并隐藏它是 AMD 模块集合的事实。但是,这需要 "loading them all at once",这是您不想要的。