在 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",这是您不想要的。
我正在开发一个 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",这是您不想要的。