我尝试将Breeze与:TypeScript,AMD模块,requirejs,knockout一起使用。
查看Breeze代码,我可以看到它需要通过名称“ko”进行淘汰。但是,还有其他组件需要通过名称“knockout”进行淘汰。
因此,如果我使用路径“knockout”创建requirejs的配置,加载器将抱怨“ko”尚未加载。如果我手动更改Breeze代码,将“ko”替换为“knockout”,一切正常。
可以做什么,所以不需要更改Breeze代码?
答案 0 :(得分:5)
您可以使用map config重新映射微风使'ko'变为'knockout'的任何请求。像这样:
require.config({
//
// your other config (e.g. paths)
//
// remap requests for 'ko'
map: {
'breeze': {
'ko': 'knockout'
}
}
});
或者,如果您要从所有模块映射“ko”请求,您可以使用* wildcard:
map: {
'*': {
'ko': 'knockout'
}
}