angularjs学习笔记2—运行phonecat项目
如果你去angularjs中文网看它的教程,你会发现一开始它提供了一个phonecat的引导项目,这个项目是angular官方给出的一个类似于demo的教程项目,并配有相应文档,按照这个项目并配合文档学习我想可能会取得很好的效果,而且这个项目本身也具有很好的借鉴意义,基本上涵盖了利用angularjs开发SPA的每个方面,运行效果也是非常好的。这里和大家分享下如何下载并运行这个项目:
我的操作系统是win7 64位 SP1,对于其他如Linux及Mac os网上可能有很多教程,而且安装运行相对比较顺利,windows下反而问题更多一些,以下就以windows环境为例来说明这个步骤
安装下载运行步骤如下:
1.需要安装node js及其包管理模块npm,具体安装配置步骤请参考这篇博文:http://www.cnblogs.com/pigtail/archive/2013/01/08/2850486.html
2.安装git for windows,注册github账号,配置sshkey并初始化代码仓库,具体步骤可参考这篇博文:http://blog.csdn.net/wh_19910525/article/details/8128916
3.以上步骤都完成之后,利用你的账号密码进入github中phonecat项目,https://github.com/angular/angular-phonecat,然后点击fork,可以将这个代码拷贝一份到你的仓库,也可以不用fork,直接使用https地址来拷贝代码,但是为了方便管理,最好是能够fork一份在自己的仓库中,这样便于以后follow,这里要说一下github提供了三种获取代码的方式,第一种是通过https协议的,这种方式最简单,在git bash 控制台下直接输入git clone https://xxx.xxxx.xx.git即可拷贝代码及相应git文件,这也是官方推荐的一种方式,第二种方式是通过ssh协议来获取代码,地址为git://github.com/xxxx.git这种形式,在这种方式下需要配置sshkey并注册到你的账户中去,具体方式见步骤2的介绍;第三种方式是通过SVN来获取,这个步骤就不介绍了,本来git就比SVN先进很多,估计没多少人退回去用这个吧。将以上代码地址使用git bash中git clone https://github.com/angular/angular-phonecat.git命令克隆到你本地(最好在你第二步配置好的指定地方,不要随便乱放,这样便于管理);
4.使用webstrom 将其下载到的代码导入项目,(这里利用webstrom8进行开发,因为webstrom8拥有很好的angularjs插件),下载地址为:http://www.33lc.com/soft/33842.html,注意必须用webstrom8.X版本,以前的版本不支持angularjs插件,下载后需要安装angular插件,具体安装步骤可参考这篇博文:http://blog.fens.me/tag/webstorm/
5.初始化导入之后项目结构如下:
其中APP目录是项目代码存放目录,node_modules是项目依赖的node模块目录,script目录是项目外部脚本的目录(似乎和本身开发关系不大),bower.json是包管理需要工具bower获取信息的文件,为了指明我们项目中都需要安装那些文件,如jquery ,bootstrap 等,关于bower的信息可参见:http://blog.fens.me/nodejs-bower-intro/,package.json是告诉node的npm模块我们项目中需要依赖哪些(安装)其他的模块,如bower,jasmine,http-server等,他们都是依赖于node的模块,都有自己的作用,关于这个文件的介绍可参照:https://github.com/ericdum/mujiang.info/issues/6,
6.按照Phonecat项目文档中给出的https://github.com/angular/angular-phonecat步骤首先在node cli下切换到你的项目目录,运行npm install,这时npm就会按照package.json中的配置去下载其他的node模块到你的项目中,并且启动bower去下载bower.json里面配置的我们项目中依赖的文件(如jquery,bootstrap等),关于这一步有可能报一个No versions found in git://github.com/components/jquery.git类似的错误,这是由于github默认下载代码方式是通过ssh的,这种情况在国内容易出现问题,可以运行 git config --global url."https://".insteadOf git://
切换下载代码方式,该问题原帖地址为:
https://github.com/bower/bower/issues/852,这一步完成之后,代码结构如下:
你会发现node_modules中多了一些模块文件夹以及APP下面多了bower_components文件夹,这就是刚才通过npm及bower下载到我们项目中的;
7.按照官方文档https://github.com/angular/angular-phonecat运行npm start,此时它会启动HTTP-server,监听localhost的8000端口,
在浏览器中输入http://localhost:8000/app/index.html,即可查看到这个项目的运行效果,
如下所示:
在左边搜索栏中输入信息,右边会发生飞快的变化,效果很炫,至此一个学习的 demo项目开发环境搭建完毕,你可以配合这个文档http://docs.angularjs.org/tutorial.去一步步学习了。
angularjs学习笔记2—运行phonecat项目的更多相关文章
- AngularJs学习笔记--Modules
原版地址:http://code.angularjs.org/1.0.2/docs/guide/module 一.什么是Module? 很多应用都有一个用于初始化.加载(wires是这个意思吗?)和启 ...
- AngularJs学习笔记--E2E Testing
原版地址:http://docs.angularjs.org/guide/dev_guide.e2e-testing 当一个应用的复杂度.大小在增加时,使得依靠人工去测试新特性的可靠性.抓Bug和回归 ...
- AngularJs学习笔记--directive
原版地址:http://code.angularjs.org/1.0.2/docs/guide/directive Directive是教HTML玩一些新把戏的途径.在DOM编译期间,directiv ...
- AngularJs学习笔记--concepts(概念)
原版地址:http://code.angularjs.org/1.0.2/docs/guide/concepts 继续.. 一.总括 本文主要是angular组件(components)的概览,并说明 ...
- AngularJS学习笔记2——AngularJS的初始化
本文主要介绍AngularJS的自动初始化以及在必要的适合如何手动初始化. Angular <script> Tag 下面通过一小段代码来介绍推荐的自动初始化过程: <!doctyp ...
- AngularJs学习笔记--Using $location
原版地址:http://code.angularjs.org/1.0.2/docs/guide/dev_guide.services.$location 一.What does it do? $loc ...
- AngularJs学习笔记--unit-testing
原版地址:http://docs.angularjs.org/guide/dev_guide.unit-testing javascript是一门动态类型语言,这给她带来了很强的表现能力,但同时也使编 ...
- AngularJs学习笔记--Managing Service Dependencies
原版地址:http://docs.angularjs.org/guide/dev_guide.services.managing_dependencies angular允许service将其他ser ...
- AngularJs学习笔记--I18n/L10n
原版地址:http://code.angularjs.org/1.0.2/docs/guide/i18n 一.I18n and L10n in AngularJS 1. 什么是I18n和L10n? 国 ...
随机推荐
- 要back的题目 先立一个flag
要back的题目 目标是全绿!back一题删一题! acmm7 1003 1004 acmm8 1003 1004 sysu20181013 Stat Origin Title Solved A Gy ...
- [uva11806]容斥定理
n*m的矩形 k个人 第一行,最后一行,第一列,最后一列都至少站有一个人 小水题 正着做不好做,要反着想,那就容斥定理,ABCD四种情况分别是那四个行列分别没有人. #include<cstdi ...
- JS中的表单验证+正则表达式
表单验证+正则表达式 一.非空验证 trim:去空格(去掉前后的空格),任何字符串都可以用这个方法.写法为:if(v.trim().length==0),表示如果去掉空格后的字符串的长度为0. < ...
- (转)matlab练习程序(HOG方向梯度直方图)
matlab练习程序(HOG方向梯度直方图)http://www.cnblogs.com/tiandsp/archive/2013/05/24/3097503.html HOG(Histogram o ...
- 简易微信小程序签到功能
一.效果图 点击签到后 二.数据库 用一张数据表存用户签到的信息,每次用户签到都会往表中添加一条记录了用户id和签到日期的数据,如下图 三.后端 后端写两个接口,一个用于查询用户今日是否签到和签到记录 ...
- 6、MySQL索引种类
1.普通索引 这是最基本的索引,它没有任何限制,比如上文中为title字段创建的索引就是一个普通索引,MyIASM中默认的BTREE类型的索引,也是我们大多数情况下用到的索引. –直接创建索引 CRE ...
- select下拉箭头改变,兼容ie8/9
各个浏览器下select默认的下拉箭头差别较大,通常会清除默认样式,重新设计 <html> <head> <meta charset="utf-8"& ...
- 【转】CVE-2010-4258 漏洞分析
一. 漏洞简介 CVE-2010-4258这个漏洞很有意思,主要思路是如果通过clone函数去创建进程,并且带有CLONE_CHILD_CLEARTID标志,那么进程在退出的时候,可以造成内核任意地址 ...
- 数据库===轻量级mysql数据库管理工具
已经上传至: https://download.csdn.net/download/bo_mask/10276952
- centos 安装flash
linux系统中安装flash插件 linux中安装flashplayer插件的简单方法: 1.下载其中最新版本的播放器,下载地址: http://get.adobe.com/cn/flashplay ...