作为mvvm 框架过重 不适用于性能比较高的移动端的web栈, ui组建性对复杂,不利于重用

AngularJS 构建一个CRUD ( create retrieve update delete )的应用,

其内容:双向数据绑定{{取值}}、基本模版标识符、表单数据、路由、深度链接、组件重用、依赖注入;

代码解析:

ng-app 标记了angularJS脚本的作用域。

{{ }}双大括号--angularjs的核心功能-绑定。

angular expression 表达式 是一种类似于javascript的代码片段,尽在起作用域中运行,而不是整个dom中运行。

指令:ng-app 初始化一个angularjs应用程序

ng-init 指令初始化应用程序数据

ng-model 指令 把元素值绑定到应用程序

ng-repeat 重复一个html元素 循环一个对象数组

$scope作用域 是应用在html 视图和 javascript控制器之间的纽带

使用:创建控制器时,可以将$scope对象当作一个参数传递

$rootScope 根作用域可作用于整个应用中。

过滤器:currency 格式化数字为货币格式

filter 从数组项中选择一个子集

lowercase 格式化字符串为小写

orderBy根据某个表达式排列数组

uppercase 格式化字符串为大写

$http.get(url).success(function(response){}) 用于读取服务器数据的函数

select(选择框)

ng-options指令 来创建一个下拉列表,列表项通过对象和数组来循环

ng-repeat 指令 来创建下拉列表

html dom元素的属性绑定应用数据的指令

ng-disabled 指令   <input type='button' ng-disabled = 'true'>

ng-show                                              ng-show = 'true'

ng-hide

事件

ng-click                                      <button ng-click="count=count+1">

原则:

1 不要试图去复用controller,一个控制器一般只负责一小块视图;

2 不要在controller中操作dom,这不是控制器的职责;

3 不要在controller里面做数据格式化,ng有很好用的表单控件

4 不要在controller里面做数据过滤操作,ng有$filter服务

5 一般,controller是不会相互调用的,控制器之间的交互会通过事件进行

AngularJS的MVC是借助于$scope实现的!!

指令  .directive('',function(){ return{ restrict:'AEMC',template:true,compile:function(){},link:function(){操作dom 绑定事件} }  })

restrict:''

E 元素  <hello></hello>

A 属性  <div hello></div>

C 样式类  <div class='hello'></div>

M 注释  <!-- directive:hello -->

scope的绑定策略:

flavor:'@'    当前属性作为字符串传递

flavor:'='   与父scope中的属性进行双向绑定

greet:'&'      传递一个来自父scope的函数,稍后调用

初入AngularJS基础门的更多相关文章

  1. 初入AngularJS

    AngularJS是一款优秀的前端JS框架,已经被用于Google的多款产品当中.AngularJS有着诸多特性,最为核心的是:MVVM.模块化.自动化双向数据绑定.语义化标签.依赖注入等等. Ang ...

  2. PHP初入,基础知识点整理(样式表&选择器的使用整理)

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  3. 0x00linux32位汇编初入--前期准备

    0x00汇编初入--前期准备 一.汇编工具 在linux平台下常用的编译器为as,连接器为ld,使用的文本编辑器为vim,汇编语法为att 以下是一些工具: addr2line 把地址转换为文件名和行 ...

  4. Java魔法堂:类加载器入了个门

    一.前言 <Java魔法堂:类加载机制入了个门>中提及整个类加载流程中只有加载阶段作为码农的我们可以入手干预,其余均由JVM处理.本文将记录加载阶段的核心组件——类加载器的相关信息,以便日 ...

  5. Git初入

    Git记录 使用git 也有一段时间了, git的入门级了解也就不再多说, 但平常使用中, 仍然会遇到很多问题, 在此记录一二. 在查资料的过程中, 发现了两个比较好的资料: 特别是第二个, 相当详细 ...

  6. 初入TensorFlow————配置TensorFlow

    能看到这说明你对python已经有一定的了解了,因此很多基础直接跳过. 一.TensorFlow环境配置: TensorFlow的环境配置在网上很多的教程都是用anaconda的方式,但是很容易出现冲 ...

  7. 初入SG-UAP

    初入SG-UAP SpriderMan 关注 2019.06.19 14:10 字数 1130 阅读 10评论 0喜欢 0 初次接触SG-UAP,将自己的见解以文字形式记录下来,希望能对初入的伙伴们有 ...

  8. Scala初入

    何为Scala物 Scala为基于JVM虚拟机中的面向对象与函数式编程思想并且完全兼容Java的混合编程语言,可以是Scala与Java是同根同源的,既然Scala与JAVA都是基于JVM之上的编程语 ...

  9. AngularJS基础入门初探

    一.AngularJS简介 1.1 什么是AngularJS (1)一款非常优秀的前端JS框架,可以方便实现MVC/MVVM模式 (2)由Misko Hevery 等人创建,2009年被Google所 ...

随机推荐

  1. centOS7关闭防火墙的命令

    centOS7下关闭防火墙的命令已经改了,如下:      systemctl stop firewalld

  2. React.js 小书 Lesson8 - 组件的组合、嵌套和组件树

    作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson8 转载请注明出处,保留原文链接和作者信息. 继续拓展前面的例子,现在我们已经有了 Heade ...

  3. lua 遍历table

    lua中有四种主要的遍历一个table的方法. 第一种方法: for key, value in pairs(testtb) do xxxx end 这种方法是按照key哈希后的顺序遍历的.比如下面代 ...

  4. AtCoder Grand Contest 023 F - 01 on Tree

    Description 题面 Solution HNOI-day2-t2 复制上去,删点东西,即可 \(AC\) #include<bits/stdc++.h> using namespa ...

  5. python实现查询的数据写入到excel

    #coding=utf-8import sysimport xlwtimport pymysql as MySQLdb #这里是python3 如果你是python2.x的话,import MySQL ...

  6. [转]Asp.net MVC中的ViewData与ViewBag

    本文转自:http://www.cnblogs.com/wintersun/archive/2012/01/21/2328563.html 在Asp.net MVC 3 web应用程序中,我们会用到V ...

  7. centos7 安装jdk、Tomcat

    1.安装jdk 下载jdk: 解压:tar -zxvf filename -C /usr/local/jdk8/ 配置环境变量: vim /etc/profile 添加如下内容:JAVA_HOME根据 ...

  8. 实用的随机数生成类Random:测试(随机产生100个不重复的正整数)

    实用的随机数生成类Random:测试(使用Random类随机生成100个不重复的正整数) 一.之前我们使用随机数用的是Math类的random()方法: tips: 产生随机数(0~9中任意整数)的方 ...

  9. 标准c库函数和linux系统函数的关系

    c库IO函数的工作流程 c库函数与系统函数的关系 虚拟地址空间 文件描述符

  10. 《ArcGIS Runtime SDK for Android开发笔记》——数据制作篇:紧凑型切片制作(Server缓存切片)

    1.前言 在ArcGIS 10中出现了一种新的切片缓存文件格式:紧凑型存储(Compact).与之前的松散型存储(Exploded)相比,它有迁移方便.创建更快.减少存储空间等诸多优点,已经成为了现在 ...