Angularjs学习---angularjs环境搭建,ubuntu 12.04下安装nodejs、npm和karma
1.下载angularjs
进入其官网下载:https://angularjs.org/,建议下载最新版的:https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0-beta.7/angular.js
所有版本:https://code.angularjs.org/
2.示例1
HelloWorld !
新建一个helloworld.html
<!doctype html>
<html ng-app>
<head>
<script src="angular.js"></script>
</head>
<body>
Hello {{'World'}}!
</body>
</html>
然后将下载的angular.js拷到与helloworld.html的同一目录
效果如下所示:

3.helloworld.html代码说明
标记ng-app告诉AngularJS处理整个HTML页并引导应用:
<htmlng-app>
注意,使用双大括号标记{{}}的内容是问候语中绑定的表达式,这个表达式是一个简单的字符串‘World’。
Hello {{'World'}}!
4.示例2
本示例演示AngularJS的双向数据绑定(bi-directional data binding):
- 编辑前面创建的helloworld.html文档。
- 将下面的源代码复制到您的HTML文件。
- 刷新浏览器窗口。
源代码
<!doctype html>
<html ng-app>
<head>
<script src="angular.js"></script>
</head>
<body>
Your name: <input type="text" ng-model="yourname" placeholder="World"><hr>
Hello {{yourname || 'World'}}!
</body>
</html>
效果:

该示例有一下几点重要的注意事项:
- 文本输入指令
<input ng-model="yourname" />绑定到一个叫yourname的模型变量。 - 双大括号标记将
yourname模型变量添加到问候语文本。 - 你不需要为该应用另外注册一个事件侦听器或添加事件处理程序!
现在试着在输入框中键入您的名称,您键入的名称将立即更新显示在问候语中。 这就是AngularJS双向数据绑定的概念。 输入框的任何更改会立即反映到模型变量(一个方向),模型变量的任何更改都会立即反映到问候语文本中(另一方向)。
5.angularjs框架简介
模板(Templates)
模板是您用HTML和CSS编写的文件,展现应用的视图。 您可给HTML添加新的元素、属性标记,作为AngularJS编译器的指令。 AngularJS编译器是完全可扩展的,这意味着通过AngularJS您可以在HTML中构建您自己的HTML标记!
应用程序逻辑(Logic)和行为(Behavior)
应用程序逻辑和行为是您用JavaScript定义的控制器。AngularJS与标准AJAX应用程序不同,您不需要另外编写侦听器或DOM控制器,因为它们已经内置到AngularJS中了。这些功能使您的应用程序逻辑很容易编写、测试、维护和理解。
模型数据(Data)
模型是从AngularJS作用域对象的属性引申的。模型中的数据可能是Javascript对象、数组或基本类型,这都不重要,重要的是,他们都属于AngularJS作用域对象。
AngularJS通过作用域来保持数据模型与视图界面UI的双向同步。一旦模型状态发生改变,AngularJS会立即刷新反映在视图界面中,反之亦然。
6.ubuntu 12.04下安装nodejs、npm和karma
1)安装nodejs
直接输入命令sudo apt-get install nodejs 安装的是0.6版本的,这个会出现问题,导致接下来安装js测试工具karma,出现问题.
所以用下载安装自己编译的方式,http://nodejs.org/download/,我这里下载的是http://nodejs.org/dist/v0.10.26/node-v0.10.26.tar.gz
然后,执行命令
tar zxvf node-v0.10.26.tar.gz
cd node-v0.10.26
./configure
make
sudo make install
这样直接编译会出错!!
必须先把其依赖环境搭建好,必须先执行如下命令:
sudo apt-get install g++ curl libssl-dev apache2-utils
sudo apt-get install git-core
git如果已经安装则不需要再安装了.
当然也可从github上直接clone了,即使用如下命令:
git clone git://github.com/ry/node.git
cd node
./configure
make
sudo make install
测试是否成功???
amosli@amosli-pc:~$ node --version
v0.10.26
查看版本是否正确,这里是正确的.
2)安装npm
sudo apt-get install npm
3)安装karma
sudo npm install -g karma
只要安装nodejs正确,那么后两步将会十分顺利.
否则安装karma时将会报如下的错误:
amosli@amosli-pc:~$ sudo npm install -g karma
npm http GET https://registry.npmjs.org/karma npm ERR! Error: failed to fetch from registry: karma
npm ERR! at /usr/share/npm/lib/utils/npm-registry-client/get.js::
npm ERR! at cb (/usr/share/npm/lib/utils/npm-registry-client/request.js::)
.....
karma以前叫testacular,是js的测试框架.
安装nodejs时参考了:http://howtonode.org/how-to-install-nodejs
如果还报错,那么可以执行以下命令试试,注册npm:
npm config set registry http://registry.npmjs.org/
Angularjs学习---angularjs环境搭建,ubuntu 12.04下安装nodejs、npm和karma的更多相关文章
- ubuntu 12.04下安装Qt出现cannot execute binary file的解决方案
最近在ubuntu 12.04下安装QT的过程中,遇到一个问题. ./qt-opensource-linux-x64-5.7.0.run出现了bash: ./qt-opensource-linux-x ...
- Ubuntu 12.04 下安装 Eclipse
方法一:(缺点是安装时附加openjdk等大量程序并无法去除,优点是安装简单) $ sudo apt-get install eclipse 方法二:(优点是安装内容清爽,缺点是配置麻烦)1.安装JD ...
- Ubuntu 12.04下安装QQ 2012 Beta3(转)
Ubuntu 12.04下安装QQ 2012 Beta3 由于wine的发展非常迅速.现在网上的利用老版本的wine来安装QQ2012的教程已经有些过时了.实际上操作起来非常简单: 第一步:Ctr ...
- [转载] Ubuntu 12.04下安装git,SSH及出现的Permission denied解决办法
如何安装ssh http://os.51cto.com/art/201109/291634.htm 仅需要阅读至成功开启ssh服务即可 http://www.linuxidc.com/Linux/20 ...
- Ubuntu 12.04下安装QQ 2012 Beta3
Ubuntu 12.04下安装QQ 2012 Beta3 由于wine的发展非常迅速.现在网上的利用老版本的wine来安装QQ2012的教程已经有些过时了.实际上操作起来非常简单: 第一步:Ctr ...
- Ubuntu 12.04下安装OpenCV 2.4.2
http://sourceforge.net/projects/opencvlibrary/files/ Ubuntu 12.04下安装OpenCV 2.4.2 http://blog.csdn.ne ...
- Ubuntu 12.04下安装配置体验GNOME 3(转载)
转自:http://www.tuicool.com/articles/zIbeIj 自己并不是一个思想前卫的人,穿衣审美也都是大众眼光.但是唯独喜欢在计算机方便尝试最新,心肝情愿的做小白鼠.近日,按耐 ...
- Ubuntu 12.04 下安装 VirtualBox 及虚拟机winxp的安装
参考文档: http://wenku.baidu.com/view/a51ac26c9b6648d7c1c746d7.html 1.首先,先去官网(http://www.virtualbox.org) ...
- ubuntu 12.04下安装openldap,slapd.conf找不到的解决方法
https://help.ubuntu.com/12.04/serverguide/openldap-server.html ubuntu安装openldap经历了一系列挫折,网上找了半天资料都是一模 ...
随机推荐
- UML的类图、时序图表示方法以及惯例
<UML类图图示样例>说明:http://wenku.baidu.com/link?url=DEaRFyVIAH4kZ7TolplfFhFhmAk3gFaNSOH7XPzfTnCWY4CB ...
- knockout 学习实例4 css
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- Reflector 反编译 .NET文件后修复
反编译后的工程文件用VS2010打开后,在打开窗体时会出现一系列错误提示: 第一种情况: “设计器无法处理第 152 行的代码: base.AutoScaleMode = AutoScaleMode. ...
- Hibernate之mappedBy
Hibernate之mappedBy 摘要: 一.mappedBy单向关系不需要设置该属性,双向关系必须设置,避免双方都建立外键字段 数据库中1对多的关系,关联关系总是被多方维护的即外键建在多方,我们 ...
- js 实现ActiveXObject("Scripting.Dictionary") 功能
/* 字典 ActiveXObject("Scripting.Dictionary") 项目中用到的ActiveXObject("Scripting.Dictionary ...
- 黄聪:jquery 校验中国身份证号码
大陆18位身份证(第二代身份证) 身份号码是一组具有特征组合码,由十七位数字本体码和一位校验码组成. 排列顺序从左至右依次为:六位数字地区码,八位数字生日码,三位数字顺序码和一位数字校验码. 校验方法 ...
- 理解Python装饰器
装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象.它经常用于有切面需求的场景,比如:插入日志.性能测试.事务处理.缓存.权 ...
- 【VB.NET】类绑定控件,实现文本框快捷键全选
Public Class KeyBinder Public Sub BindControl(ByRef CControl As TextBox) AddHandler CControl.KeyDown ...
- Apache配置简单http认证
首先要说明的是这种认证是不安全的,密码是明文传输,因此很容易被各种嗅探软件嗅探到密码,只能用于简单的认证.今天上午把ownCloud卸载了,这玩 意儿中看不中用啊,原来10M的访问速度被限制成了几百K ...
- Appium在没有收到下一个命令时,默认超时时间是60s,超时后应用将会自动关闭,如果有需要等待超过60s的场景,怎么处理?
DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("newCo ...