转:seajs的spm使用摸索】的更多相关文章

~~~spm是基于nodejs的,打开nodejs命令行工具,npm install spm -g 进行spm的安装,过程很漫长 github上的官网不能访问 seajs自带的spm打包工具相关文档略少,在粗读了一点源代码之后,我摸索出了spm使用上的一些要点,记录为此文 压缩JS文件 只需要执行这个命令即可 spm build xxx.js 这时候你将得到一个压缩过的__build/xxx.js文件 合并JS文件 如果希望将JS文件中require的其他模块都合并到这个文件中,我们可以加上--…
seajs是个好东西,用起来很方便,但是她的压缩工具spm确不被网友看好,因为使用起来很麻烦,捯饬了一天多,终于勉强能压缩了,这里就简单记录一下. 按照地址:http://www.zhangxinxu.com/wordpress/2012/07/seajs-node-nodejs-spm-npm 的步骤一步一步的来(感谢作者),先把前期工作准备好,就是先用seajs编写一个测试项目. 接下来开始使用spm: 1) 安装spm2版本:npm install spm@2.x -g 注意spm2和sp…
压缩JS文件 只需要执行这个命令即可 spm build xxx.js 这时候你将得到一个压缩过的__build/xxx.js文件 合并JS文件 如果希望将JS文件中require的其他模块都合并到这个文件中,我们可以加上--combine参数另外记得这时候必须传递--app_url参数,用于生成module的id,如 spm build xxx.js --combine --app_url http://x.com 你将与上面一样得到一个__build/xxx.js文件,但是这个js中requ…
前面描述了 seajs的弹出遮罩层, 还没讲到弹出框, 这里接着把那几个例子介绍完. 目前已经有的工作是, 点击toggle按钮,可以弹出一个背投一样的暗灰色遮罩层, 主要的作用就是遮住当前页面上所有的html元素, 使得用户集中精力于即将弹出来的对话框. 下面分析对话框. 目前对话框有2中,一种就是直接夹杂在当前页面里,或者直接js里显示好. 另外一种就是使用ajax请求, 获取某个html页面显示出来. http://www.zhangxinxu.com/wordpress/2012/07/…
说实话, 前端开发是一个令人头痛的事情. nodejs出现了很久了, 一直不是很习惯用nodejs, 当初刚出来的时候, 就下载了express, 想搭建个网站, 结果不是我的菜, 愣是用的不习惯,也就搁置了很久. 直到发现了kissy, aliceui.org, 淘宝支付宝系的前端js框架和css解决方案. 先说kissy, 这东西用在淘宝上, 实际上就是淘宝自己的jQuery+css框架, 功能已经有目共睹了, 淘宝的页面在各种浏览器上显示还是挺一致的. 再说aliceui, 其实应该叫做a…
标签:seajs   nodejs   npm   spm   js 1. 概述 本文章来源于本人在项目的实际应用中写下的记录.因初期在安装和使用Seajs和SPM的时候,有点不知所措的经历.为此,我们编写本文档,通过图文并茂的方式来为大家讲解seajs和spm编译环境的搭建和基本使用方法. 2. 认识SEAJS seajs是一种前端模块化加载框架,与jQuery等javascript框架不同,SeaJS不会扩展封装语言特性,而只是实现JavaScript的模块化及按模块加载.SeaJS的主要目…
上一篇还没写完, 因为我觉得太长了, 影响阅读, 就截断继续写. 因为还没有写到修改 创建模块的模板啊. 之所以想到要修改spm用来创建模块的模板, 是因为, 有一天我突然上不了网了, 发现spm完全挂了, 它引用了alipay上面的几个css, js, 结果全引用不了了. 另外spm的限制也是明显的, 这就是它贱贱的地方. spm的贱格主要体现在: 1. spm的使用介绍实在是太少了, 入门资料很少. 毕竟github的wiki都懒得翻的人大有人在. 2. spm创建的模板默认包含的是alip…
RequireJS SeaJS CMD规范 CommonJS的规范: 根据CommonJS规范,一个单独的文件就是一个模块.加载模块使用require方法,该方法读取一个文件并执行,最后返回文件内部的exports对象 SeaJS定义模块方式 在 SeaJS 里,模块只有一种书写格式 define(function(require, exports, module) { var A = require('a'); A.do(); return function () {}; }); Requir…
根据玉伯等人在知乎上的回答整理.整理中... AMD 规范在这里:https://github.com/amdjs/amdjs-api/wiki/AMD CMD 规范在这里:https://github.com/seajs/seajs/issues/242 背景 要想将JavaScript提升到和其他编程语言一个级别的编程体验,包管理是一个必须之物. 早期如labjs首先解决的是js文件加载管理的问题. LABjs 的核心是 LAB(Loading and Blocking):Loading 指…
在最开始,我并不知道grunt可以构建CMD模块.(以下spm指代spm build) 当时正困惑于如何用spm方便的构建业务模块,后来看到@twinstony (感谢@twinstony的分享)使用grunt-cmd-xxx插件构建了CMD模块,跟着demo自己做了测试,的确可以构建,但是有一个问题: grunt 方式不能把依赖的外部css(比如非项目中的jquery插件css)打包进来,而spm可以. 其原因是,spm会根据别名配置依次(./sea-mpdules -> ~/.spm/cac…