javascript - 关于spm3中如何忽略seajs中定义的别名
高洛峰
高洛峰 2017-04-10 14:30:42
0
1
223

或许是我有些地方没有理解透彻,求指点:
在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 mytest@1.0.0
  arguments: dest = dist
  arguments: cwd = $CWD
  arguments: include = relative
  arguments: ignore = bootstrap
  arguments: idleading = {{name}}/{{version}}
  arguments: install = true
      found: jquery@1.7.2
    install: bootstrap@0
      fetch: bootstrap@0
      error: Not found.
      found: expect.js@0.3.1
      found: seajs@2.2.1

      error: Not found.

找不到bootstrap是必然的,我怎么排除他,让生成的文件中只显示
require('bootstrap')就好,不要为它生成路径。

求解,万分感谢

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!