学习Angularjs-day1-总结

AngularJS是为了克服HTML在构建应用上的不足而设计的。HTML是一门很好的为静态文本展示设计的声明式语言,但要构建WEB应用的话它就显得乏力了。所以我做了一些工作(你也可以觉得是小花招)来让浏览器做我想要的事。

通常,我们是通过以下技术来解决静态网页技术在构建动态应用上的不足:

类库 - 类库是一些函数的集合,它能帮助你写WEB应用。起主导作用的是你的代码,由你来决定何时使用类库。类库有:jQuery等

框架 - 框架是一种特殊的、已经实现了的WEB应用,你只需要对它填充具体的业务逻辑。这里框架是起主导作用的,由它来根据具体的应用逻辑来调用你的代码。框架有:knockout、sproutcore等。

Angular js  下载地址

http://angularjs.org

AngularJS使用了不同的方法,它尝试去补足HTML本身在构建应用方面的缺陷。AngularJS通过使用我们称为标识符(directives)的结构,让浏览器能够识别新的语法。例如:

 使用MVC模式开发;用ng-controller来指定每个控制器负责监视视图中的哪一部分。

使用双大括号{{}}语法进行数据绑定;

 依赖注入;

 首先 当然是引入Angularjs

<script src="xx/angular.js"></script>

 然后,在你要被Angular 控制的部分上加上NG-APP 值,可以为空,最好命名一下。

 <div ng-app="app">

需要在脚本里面“激活”

<script type="text/javasricpt">

angular.module(‘app‘,[])

.controller(‘hello‘,function($scope){

  $scope.text=‘hello‘

})

</script >

module(),第一参数是想要被控制的模块,这里是app这个名字的模块,第二参数是后续想要和angular一起加载的类库,可以["",“”,“”]这种形式添加进入

然后是

<div ng-controller="hello">
<input ng-model="text" class="form-control" />
<h1 ng-bind="text+‘,world‘">,world</h1>
<h1 ng-cloak class="ng-cloak">{{text}}</h1>
<div class="{{text}}">{{text}}</div>
</div>

在DIV里面加入ng-controller 控制他,在脚本里调用.controller 设置方法控制。用$scope绑定数据和视图层的数据绑定

在对input里面绑定想要改变的数据,运用ng-model=“”你设置的变量,这里是“text”

用{{}}进行关联,里面放text.

可能有人觉得{{}}放在DOM结构里很丑,我们还可以用ng-bind 或者ng-cloak 来设置,效果是一样的。

在复杂一点

<body ng-app=‘app‘>
  <div ng-controller="hello">
    <input ng-model="text" class="form-control" />
    <h1 ng-bind="text+‘,world‘">,world</h1>
    <h1 ng-cloak class="ng-cloak">{{text}}</h1>
  <div class="{{text}}">{{text}}</div>
</div>

<div ng-controller="shopping">
  <div ng-repeat="item in item">
    <span>{{item.title}}</span>
    <input type="" name="" id="" value=""ng-model="item.quantity" />
    <span>{{item.price|currency}}</span>
    <span>{{item.price*item.quantity|currency}}</span>
  <button ng-click="remove($index)">Remove</button>
</div>

js代码

angular.module(‘app‘,[])
.controller(‘hello‘,function($scope){
  $scope.text=‘hello‘
})
.controller(‘shopping‘,function($scope){
  $scope.item=[
  {title:‘A‘,quantity:8,price:3.95},
  {title:‘B‘,quantity:12,price:55},
  {title:‘C‘,quantity:28,price:95}
  ]
  $scope.remove = function(index){
  $scope.item.splice(index,1)
  }
})

这里实现了按照input里面填的数量,计算后面的总价格,点击旁边的REMOVE 移除当前这一行

利用了.js里面设定的数组,在HTML里面 ng-repeat 遍历数组里面的对象值

ng-repeat的意思是对于item数组中的每个元素,都把<div>中的DOM结构复制一份(包括DIV本身),对与DIV的每一分拷贝,都会把一个ITEM的属性给它,这样就可以在模板中使用这份拷贝的元素了

时间: 2024-08-24 14:21:12

学习Angularjs-day1-总结的相关文章

学习AngularJs:Directive指令用法(完整版)

这篇文章主要学习AngularJs:Directive指令用法,内容很全面,感兴趣的小伙伴们可以参考一下 本教程使用AngularJs版本:1.5.3 AngularJs GitHub: https://github.com/angular/angular.js/ AngularJs下载地址:https://angularjs.org/ 摘要:Directive(指令)笔者认为是AngularJ非常强大而有有用的功能之一.它就相当于为我们写了公共的自定义DOM元素或LASS属性或ATTR属性,并

Linux学习日志day1——无人值守系统安装DHCP+TFTP+PXE+Kickstar

Linux学习日志day1--无人值守批量系统远程网络安装(DHCP+TFTP+PXE+Kickstar)                                         --作者:江信瀚 服务器环境介绍: 主机名:workstation.example.com 关闭SElinux以及防火墙 虚拟机:VMware(关闭了VMware的DHCP服务) 网卡配置: 静态IP获取! IPV6全部都删除,因为根本用不到 子网IP可以在VMware中设置 8.8.8.8是谷歌的DNS服务器

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> &

学习Angularjs向数据库添加数据

今天学习angularjs向数据库添加数据. 学习此篇,得从以往几篇开始,因为那还有创建数据表等演示. 现在来创建一个添加的存储过程: SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROCEDURE [dbo].[usp_Goods_Insert] ( @Item NVARCHAR(55), @Description NVARCHAR(20), @Qty DECIMAL(10,2) ) AS IF EXISTS(SELECT T

学习JAVA Day1

为了个人兴趣,和今后出路,开始学JAVA了. 仔细想想,其实没有系统学过编程课.都是自己看文章学的.在网上找来一个<黑马程序员 毕向东 Java视频教程> 来学学试试. 心得: 1. 包含关系 JDK>JRE>JVM 2. Java有3中注释方式,单行//, 多行 /**/, 文档/** ... */ 文档是特有的.注释可以用来debug 3. 学习JAVA Day1

JavaScript学习记录day1

JavaScript学习记录day1 学习 javascript JavaScript学习记录day1 1. 快速入门 2. 编程工具 3. 语法 4. 注释 5. 大小写 JavaScritps 是什么? JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能. 在Web世界里,只

【js类库AngularJs】学习angularJs的指令(包括常见表单验证,隐藏等功能)

[js类库AngularJs]学习angularJs的指令(包括常见表单验证,隐藏等功能) AngularJS诞生于2009年,由Misko Hevery 等人创建,后为Google所收购.是一款优秀的前端JS框架,已经被用于Google的多款产品当中.AngularJS有着诸多特性,最为核心的 是:MVVM.模块化.自动化双向数据绑定.语义化标签.依赖注入.等等. 参考资料: angularjs中文网:http://www.apjs.net/ angularjs官网:http://angula

AngularJS学习--- AngularJS中数据双向绑定(two-way data-binding) orderBy step4

1.切换工作目录 git checkout step-4 #切换分支,切换到第4步 npm start #启动项目 2.代码 app/index.html Search: <input ng-model="query"> Sort by: <select ng-model="orderProp"> <option value="name">Alphabetical</option> <opti

7本学习AngularJS的免费电子书

电子书可以给我们一个有结构有组织的方式学习新的知识.学习 AngularJS也一样.现在最棒的事情莫过于电子书中提供大量实践练习,帮助我们理解各种方面. 让我们度下面7本书探究 AngularJS 吧--有的综合性强,有的很有趣,所有的书籍都有很高的可读性,而且,如果你在线阅读的话,一分钱都不用花. 1. AngularJS In 60 Minutes 作者: Dan Wahlin 在线阅读:http://fastandfluid.com/publicdownloads/AngularJSIn6

AngularJS学习--- AngularJS中模板链接和图像 ng-src step6

接上一篇文章,本文将主要介绍angularjs中的模板链接,和图像显示? 首先,切换分支,启动项目: git checkout step-6 npm start 1.效果 相较于前一篇文章,明显感觉多了图片,那么这些图片是怎么加载进去的呢?这里图片各不一样,如果用传统的方式去加载图片可能要写很多代码,这里看一下angularjs是如何实现的?? 2.实现代码 app/index.html <ul class="phones"> <li ng-repeat="