关于spm3中如何忽略seajs中定义的别名
或许是我有些地方没有理解透彻,求指点:
在spm2中的package.json中有alias来定义这些别名,我看到官方的迁移说明
如下:
修改 spm.alias 为 spm.dependencies,注意 dependencies 的格式为 "{{name}}": "{{version}}"
-
"alias": { "base": "anima/base/1.1.0/base" }
改为 "dependencies": { "anima-base": "1.1.0" }
但是我发现dependencies只能定义官方提供的模块 jquery、arale-xx等等,这些还要给出正确的版本号,而我在seajs config中定义的别名文件可能指向另一个站点提供的seajs模块,我在dependencies中设置是无效的。
我使用"buildArgs":"--ignore bootstrap"来忽略也不行,这个只能忽略dependencies中可以定义的模块
代码片段:
window.$ = window.jQuery = require('jquery');
require('bootstrap');//seajs-config中定义的别名
//package.json 片段
"spm": {
"main": "index.js",
"dependencies": {
"jquery":"1.7.2",
"bootstrap":"xxx" //这里没有版本号(肯定是不行的),删除掉是一样的错误
},
"buildArgs":"--ignore bootstrap"
}
错误:
start: build [email protected]
arguments: dest = dist
arguments: cwd = $CWD
arguments: include = relative
arguments: ignore = bootstrap
arguments: idleading = {{name}}/{{version}}
arguments: install = true
found: [email protected]
install: bootstrap@0
fetch: bootstrap@0
error: Not found.
found: [email protected]
found: [email protected]
error: Not found.
找不到bootstrap是必然的,我怎么排除他,让生成的文件中只显示
require('bootstrap')就好,不要为它生成路径。
求解,万分感谢
哥哥,轻一点
10 years, 4 months ago
Answers
https://github.com/spmjs/spm/pull/856 不知道能否解决?需要等 3.1 发布。
苍蓝杀戮天使
answered 10 years, 4 months ago