RequireJs中使用layer的问题
一、requireJS中引用了layer.js,在其他js中调用layer方法时报错,提示layer未定义:
require.config({
baseUrl: "../../../",
paths: {
'layer': 'Scripts/stream/js/layer/layer',
'layerext': 'Scripts/stream/js/layer/extend/layer.ext',
},
shim: {
'layer': {
deps: ['jquery'],
exports: "layer"
},
'layerext': {
deps: ['layer', 'jquery'],
exports: "layerext"
},
}
});
其中执行layer.ext.js时提示layer未定义,
用下面的方法均不行:
layer.config({
extend: 'extend/layer.ext.js'
});
查看页面引用的js中有layer.js(当前版本是2.0的)。
后来查看layer的版本记录发现这是layer2.0(包括更低版本)的一个bug,
其中layer2.1版本的更新日志有一条:
> 修复在使用seajs或者requirejs后,layer.ext.js报layer未定义的错误。
解决方式:替换最新的layer.js即可
二、requireJs中layer样式丢失
requirejs中通过layer单独加载自身样式
layer.config({
path: '../../Scripts/stream/js/layer/' //layer.js所在的目录,可以是绝对目录,也可以是相对目录
});
三、待更新