我的页面包含几个作为单独的AMD模块存在的组件.Require.js优化器将每个组件转换为单个文件.由于其中一些组件共享依赖项(例如jQuery和d3),因此优化器paths配置将CDN URL用于这些依赖项,而不是将它们捆绑到优化文件中.
这是它变得棘手的地方.我为Ractive.js编写了一个名为rvc.js 的模块加载器插件,它允许我包含HTML文件中定义的Ractive组件.(是的,我正在寻求有关如何使用我自己的库的帮助.)
这很好 - 这样的代码可以按照您的期望进行优化:
define( function ( require ) {
var ChartView = require( 'rvc!views/Chart' );
var view = new ChartView({ el: 'chart' });
});
Run Code Online (Sandbox Code Playgroud)
因为Ractive被几个组件使用,所以应该从像jQuery和d3这样的CDN提供服务.但是在优化过程中rvc.js使用它,这意味着Ractive优化器paths配置的条目不能指向CDN - 它必须指向本地文件.
有没有办法告诉Require.js'在优化期间使用本地文件,但是在运行时从CDN加载'?