readme : 因为我在在spm3中主要用到的是spm build这个命令,因此本文简单的介绍一下如何安装spm3和使用其中的spm build命令

一.安装

1.安装nodejs

直接去官网下载nodejs,然后进行安装,这里就不详细说明了,安装好以后可以尝试一下node -v这个命令,如果安装成功的话一般都会弹出版本号

2.安装spm3

打开cmd(命令提示符),然后键入npm install spm -g,因为新安装的spm都是默认最新的,也就是spm3,至少现在还是这样~

在上面这个过程中其实会发生很多事,比如安装失败,it‘s so 正常~毕竟每台电脑的环境不一样么~不过我自己在三台电脑上进行了安装,一开始都有些错误,不过最后经过我的努力,终于都搞定了。

这里我大概说下可能出现错误的原因:

(上面“一”和“1”都用过了,大家就将就下我的英语吧~嘿~嘿)

first:nodejs的版本太低,这个可能需要你安装新的nodejs才能解决

second:你运行npm install spm的环境可能不太对,最好还是直接在cmd窗口中运行,因为我在powercmd这个软件中安装了三次都失败了,最后在电脑原生的cmd窗口中运行了一下就装好了

三.使用

1.生成项目

也许你之前使用过了spm2或者更早的,那么你可能不需要再看了,因为你可能比我更了解它了~

这里我还想说的是,这里我所写的都是不适用gruntjs的哦~如果要配合gruntjs的话,你可以用grunt安装个shell插件来执行build spm这个命令(不用grunt的孩子们这句话就别管了哦~)

言归正传:将cmd的目录跳转到在你准备构建项目的目录下,然后键入spm init,它会自动给你构建出项目的

其实构建出来的这么多东西大部分都没什么用,其中最有用的当然就是package.json。

2.package.json解释

这里呢,我给大家一个官方的文档地址http://spmjs.io/documentation/package.json,大家可以去看下,虽然是英文的,但是TMD是国人自己写的,为什么不MMD写成中文的呢,我********,好了,不说了,都是泪~

看了官网的文档,也许你还是不太明白,其实我也不是很明白,我只好给大家讲讲我自己的看法和简介了~

当你打开这个json文档的时候,你会看到spm这个节点,下面有个dependencies,在它下面放的都是一些插件和工具(给代码用的,我想jq在里面你就能够理解它是干嘛的了),而main这个节点是js的一个主入口,一开始我也不太理解,不过最后我还是不太理解,我觉得能用到的地方是当你开发一款插件(最后只生成一个js的项目)的时候需要用到。

其中比较有用的我感觉是output,这个是一个数组,用来写你js的原始路径(只需要写你主要的js路径就ok了,生成的路径是spm自己生成的)。

3.构建项目

在构建项目时主要也是唯一可以用到的就是运行spm build方法了,这个方法会生成一个dist文件夹,里面的文件什么的,都是通过package.json这个文件中的配置来生成的,所以最好了解一下package.json这个文件。

当你生成好以后修改你页面中seajs.use的路径(也可以修改seajs.config),就能够运行你的项目了!!!

4.say fuck~

oh,no~~~why 我的项目跑步起来,js没报错?但是就是js不执行?

我遇到这个情况已经不是一次了,我一开始搞了好久都是这个问题,恼火死我了,真心不想用spm3了,这蛋疼的东西~~~

后来我才知道原来spm3是整合符合cmd规范的,使用seajs来开发的代码!所以你的模块化代码不需要再写define这个东西,而require、exports、module依然还是存在的不需要你自己写。

当然这也产生了很多问题,就是没有构建的时候你的模块化代码无法跑起来,而构建的时间又“很长”,所以只能说spm3还不够完善~i think 是这样的~

总结:

这是我第一次在博客园发随笔哦,技术水平不够请各位大侠担待~so 3Q~

spm3安装和使用的更多相关文章

  1. spm3 基本

    spm3 命令 spm init //初始化一个spm模块,会生成基本配置以及测试文件等(下图). //注 初始化以后一般需要 鲜执行一下 spm install 安装默认依赖模块 index.js就 ...

  2. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  3. 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法

    如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...

  4. Sublime Text3安装JsHint

    介绍 Sublime Text3使用jshint依赖Nodejs,SublimeLinter和Sublimelinter-jshint. NodeJs的安装省略. 安装SublimeLinter Su ...

  5. Fabio 安装和简单使用

    Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...

  6. gentoo 安装

    加载完光驱后 1进行ping命令查看网络是否通畅 2设置硬盘的标识为GPT(主要用于64位且启动模式为UEFI,还有一个是MBR,主要用于32位且启动模式为bois) parted -a optima ...

  7. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...

  8. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...

  9. 【原】nodejs全局安装和本地安装的区别

    来微信支付有2年多了,从2年前的互联网模式转变为O2O模式,主要的场景是跟线下的商户去打交道,不像以往的互联网模式,有产品经理提需求,我们帮忙去解决问题. 转型后是这样的,团队成员更多需要去寻找业务的 ...

随机推荐

  1. (XAML)"XXXX" does not exist in the namespace "clr-

    Error 139 Assembly 'System.Activities.Core.Presentation' was not found. Verify that you are not miss ...

  2. Windows2008防火墙封ip

    http://www.bitscn.com/os/windows/201411/406212.html

  3. 自己动手写ORM

    http://blog.csdn.net/sundacheng1989/article/category/1350100

  4. Yii 框架中带有区间的搜索

  5. ConcurrentHashMap使用要点

    ConcurrentHashMap的简要总结: 1.public V get(Object key)不涉及到锁,也就是说获得对象时没有使用锁: 2.put.remove方法要使用锁,但并不一定有锁争用 ...

  6. R %operator% 含义

    %foo% is the syntax for a binary operator. In base R: %in%: '"%in%" <- function(x, tabl ...

  7. Android NFC开发概述

    NFC手机相比普通手机来说,有以下3个附加功能:  1.可以当成POS机来用,也就是“读取”模式   2.可以当成一张卡来刷,也就是NFC技术最核心的移动支付功能  3.可以像蓝牙.Wi-Fi一样做点 ...

  8. windows 下使用 zip安装包安装MySQL 5.7

    以下内容参考官方文档:http://dev.mysql.com/doc/refman/5.7/en/windows-start-command-line.html 解压缩zip到D:\mysql-5. ...

  9. [技巧]把Excel里的数据插入到数据库里的方法

    .如果先在6行数据的最后一列在插入一列数据,请先把列名写好,然后再第一行的该列下输入数字, 然后选中该单元格向下拖拽一个单元格然后就能看到黑色的小框, 双击右下角黑色的小点,6行数据就 会填上默认的第 ...

  10. BC之Run

    Problem Description AFA is a girl who like runing.Today,he download an app about runing .The app can ...