Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

spm 介绍 #1

Open
fayching opened this issue Jul 18, 2014 · 0 comments
Open

spm 介绍 #1

fayching opened this issue Jul 18, 2014 · 0 comments
Assignees
Labels

Comments

@fayching
Copy link
Member

概念

spm: 一个包管理工具 + 以 grunt 为基础的构建 + 一推 plugin。包管理指代码模块管理,增删改查,版本依赖管理等。

区别

  • spm :浏览器端包管理,最初基于CMD规范,SPM从3.X开始全面迎向CommonJS,逐步放弃CMD。
  • npm:node端包管理,树状依赖结构
  • Bower:浏览器端包管理,扁平依赖结构,不提供构建工具

前端架构

  • alice:样式组件库
  • seajs:模块加载器 ,CMD规范
  • spm:CMD 包管理工具
  • spmjs.org:模块生态圈,新版spm3.0在spmjs.io
  • totoro:单元测试工具
  • nico: 文档工具

命令

spm install 下载依赖

spm init 初始化模板工具

spm doc 支持 livereload,只要通过 spm doc watch 启动服务,修改文件后都会自动构建和刷新浏览器。Grunt 插件 LiveReload 实现页面自动刷新,所见即所得编辑

spm build 使用 gruntjs 进行实现,能够打包压缩符合 cmd 规范的 js 和 css 文件。

spm publish 命令将会把你的模块发布到默认的源服务器中,公网的源地址是 https://spmjs.org

spm deploy 部署到开发服务器

arale

http://aralejs.org/

基础

包括class,events,base,widget

  1. 规范组件写法
  2. 提供实用的功能方便扩展

工具

Jquery等外部框架和组件,可以直接拿来用

组件

有自己继承链

Widget 是 UI 组件的基础类,约定了组件的基本生命周期,实现了一些通用功能

每个 Widget 只会对应一个 element,会对他的 DOM 及事件进行操作。

element 的可以使用template生成

http://aralejs.org/widget/

@fayching fayching added the doc label Jul 18, 2014
@fayching fayching self-assigned this Jul 18, 2014
@hkz404 hkz404 changed the title spm介绍 spm 介绍 Jul 27, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant