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经历了一系列挫折,网上找了半天资料都是一模 ...
随机推荐
- Windows安装包制作指南——Advanced Installer的使用
1. 前言 最近需要制作windows的安装包,据说Advanced Installer比较强大,遂拿它来制作安装包.在网上少量资料以及官网简约文档中摸索前进,总算是制作出可用的安装包,在此记录,仅供 ...
- Java多线程——同步(一)
好习惯要坚持,这是我第二篇博文,任务略重,但是要坚持努力!!! 1.竞争条件 首先,我们回顾一下<Java核心技术卷>里讲到的多线程的"竞争条件".由于各线程访问数据的 ...
- LINQ查询操作符之Select、Where、OrderBy、OrderByDescending、GroupBy、Join、GroupJoin及其对应的查询语法
介绍 ·Select - Select选择:延迟 ·Where - Where查询:延迟 ·OrderBy - 按指定表达式对集合正序排序:延迟 ·OrderByDescend ...
- Null modem接线
1.6 <-> 4 2 <-> 3 3 <-> 2 4 <-> 1.6 5 <-> 5 7 <-> 8 8 <-> ...
- SQL 之witn as语法
with as 是临时视图的语法:with qry_a as (select * from table_a )select * from qry_a ;
- unity3d c#调用控件属性
GUIText控件wenzi text 属性值 GameObject.Find("wenzi").guiText.text="修改内容"; 把你要获取的变量权限 ...
- php创建多级目录的两种方法
1.使用递归的思想 function mkdirs_2($path){ if(!is_dir($path)){ mkdirs_2(dirname($path)); if(!mkdir($path, 0 ...
- 剑指Offer:面试题22——栈的压入,弹出序列(java实现)
题目描述: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈 ...
- IQ推理:红眼睛和蓝眼睛
题目: 有一个很古老的村子,这个村子的人分两种,红眼睛和蓝眼睛,这两种人并没有什么不同,小孩在没生出来之前,没人知道他是什么颜色的眼睛,这个村子中间有一个广 场,是村民们聚集的地方,现在这个村子只有 ...
- php数组转换成json格式。
{ "touser":"OPENID", "template_id":"ngqIpbwh8bUfcSsECmogfXcV14J0t ...