angular.js 一个js框架 , 是三大主流框架之一:( vue  react angular );

  原先的开发:前端和后台,利用 Ajax 进行交互,

  但是框架却提出了一种开发模式:mvc  这中模式应用也是极其广,微信小程序,三大框架,等;

  mvc  m代表:module 仓库  v代表:view 视图层  c代表:controller 控制器;

  也就是说,前台不用在像以前,从服务器拿数据了,从 module 中 拿这个数据,这个拿数据的方法叫控制器 controller ,将数据渲染到视图层,将数据渲染到视图层,view 这种流程叫 mvc

  

  但凡是牵扯到指令上的东西,都是变量;

  angular 他的指令都是 ng 开头的

  view 视图层:

  ng-app:声明:angular 的应用程序 / 指定 angular 的应用范围,是标签上的属性,只有 ng-app 才能使用 angular 的指令;一般我们都直接加在 body 上,意思是 整个页面都可以使用 angular 语法

  ng-model:将数据渲染到指定的应用程序中,标签上的属性,也就是我们可以直接在 view 直接对 angular 的变量进行定义,然后 通过 {{}} 来进行渲染;

  ng-bind:将应用程序中的数据中绑定到指定的 html 视图中,就是将数据渲染到页面的一种方式;

  ng-controller:这个就是我们所说的 c 控制器,控制器在使用前需要定义;

  ng-repeat:对于页面最好的操作,莫过于循环,省时省事,框架给我们提供的好方法;

  ng-view:把一个页面当多个页面来用,需要配合页面路由来使用;

    

  {{}}:将数据渲染到页面中来;

  备注:在所有的框架中都是:指令中后面的值没有特殊情况下都是数据(变量);

  例如:ng-model="name"  name 就是数据,别看它在字符串里面包着;

     ng-model=" 'name' "  这样的 name 才是字符串,不过这个情况出现的少,可以忽略;

  几个案例:

    1. ng-model 案例: 

      <div ng-model="xi='hello'">
        {{xi}}
      </div>
    2. 双向数据绑定最好的证明方式:      
      <input type="text" ng-model='name' value="{{name}}">
      <p>{{name}}</p>

    3. 声明 ng-app 的使用范围:

      <body ng-app="myApp"></body>
    4. 对  var lis=[10,20,30,40,50,60,70,80,90]  数据进行循环渲染:
      <div ng-controller="li">
        <div ng-repeat="(index,item) in lis">
          <p>{{item.name}}</p>
        </div>
      </div>
 
  module 讲解:
  对于 ng-app 的定义:否则在 view 视图层,便不能使用 angular 的语法
  var app=angular.module(" view中 ng-app的属性值",["依赖的模块"]);
  app.controller(" view中 ng-controller 的属性值",function($scope,$http,$routeParams){
    //$scope:写数据,用于向 view 传输  数据格式 三种:字符串  数组  对象
    $scope.lis=[10,20,30,40,50,60,70,80,90];
    //$http:向服务器请求数据
    $http.get("url地址").then(function(res){
      console.log(res)  //res 便是向服务器请求的数据
    })
    //$routeParams:获取 url 地址中的参数
    console.log($routeParms);
  })
  
  完整操作的案例:
  

  <!DOCTYPE html>
  <html>
    <head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <meta http-equiv="X-UA-Compatible" content="ie=edge">
      <title>Document</title>
      <script src="lib/angular.js"></script>
      <script src="lib/angular-route.js"></script>
    </head>
    <body ng-app="myApp">
 
      <!-- 通过 ajx 请求数据 -->
      <div ng-controller="li">
        <div ng-repeat="(index,item) in lis">
          <p>{{item.name}}</p>
        </div>
      </div>
    </body>
  </html>
  <script>
  var app=angular.module("myApp",[]);
  // 向服务器请求数据
  app.controller("li",function($scope,$http){
    $http.get("01.json").then(function(res){
      console.log(res.data.sd);
      $scope.lis=res.data.sd;
    })
  })
  </script>
  -------------------------------------------------------
  01.json 文件 
  {
  "sd":[
      {"name":"zhang","age":20},
      {"name":"zhang","age":20},
      {"name":"zhang","age":20},
      {"name":"zhang","age":20},
      {"name":"zhang","age":20},
      {"name":"zhang","age":20},
      {"name":"zhang","age":20},
      {"name":"zhang","age":20}
    ]
  }
  
  下面将页面的跳转方式,
  路由:route 引入文件 angular-rotate.js 文件;
  通过路径跳转到什么地方,与传统的 a 链接跳转有很大的区别 ,这种路由跳转是在一个页面上进行数据及模块的切换,并不是那种从一个页面跳到另一个页面;
  angular-rotate.js 定义模式的依赖:ngRoute;
  angular定义模块的方式:angular.module  凡是 angular的 js 文件,我们都可以通过这种方式进行查看,定义模式的依赖
 
  前端模块的定义:
    ng-view 单页面的最大的容器,用来存放路由对应组件或页面;
 
  为了具有观赏性,以下案例截图
  一种很简单的案例:
    view 部分
    

    

    js 部分

    

    

    

    上面的路径指的是 .when ()中的 第一个参数;

    

    这个案例虽然简单,但是实际开发种用不上,所以,延伸出下一个案例:

    view 还是不变

    

    

    js 部分

    

    跳转zhang 页面的另一种写法  

    

 

    shou.html  可通过截图得知 shou.html 就是要往 ng-view 传入的内容 主要看 a 链接对传参的处理

    

    在 a 标签上 对 页面 zhang 的另一种 传参

    

    a.js 用于对 shou.html 的数据传输

    

    zhang.html  可在其中看到 zhang.html 起到的作用,在同一个页面传输不同的数据

    

    e.js 对 zhang.html 数据的处理

    

angular 语法的应用的更多相关文章

  1. angular2.0学习笔记4.npm常用指令记录及angular语法

    以下命令,都需要在命令行窗口中,先切入到项目文件夹目录,再执行 1.npm start 这个命令会在“监听”模式下运行TypeScript编译器,当代码变化时,它会自动重新编译. 同时,该命令还会在浏 ...

  2. Angular语法(三)——数据绑定

    绑定类型 绑定类型可以按照数据流的方向分为三类:从源到视图,从视图到源,以及双向序列 示例 <!-- Bind button disabled state to `isUnchanged` pr ...

  3. angular语法:Controller As

    这个东东我觉得很好哟. 数据可以在同一个页面的不同的controller之间自由穿梭... 当然, https://thinkster.io/a-better-way-to-learn-angular ...

  4. Angular语法(一)——展示数据

    双花括号{{}} 展示数据 title = 'Tour of Heroes'; myHero = 'Windstorm'; <h1>{{title}}</h1> <h2& ...

  5. Angular语法(二)——模板语法

    双花括号{{}} <img src="{{heroImageUrl}}" style="height:30px"> <!-- "Th ...

  6. Angular源码分析之$compile

    @(Angular) $compile,在Angular中即"编译"服务,它涉及到Angular应用的"编译"和"链接"两个阶段,根据从DO ...

  7. angular学习笔记02 angular指令大全

    第一步 先要引入angular, 第二步  在 html 标签中<html  ng-app>  加入ng-app(这是个必须的,不然会报错) 接下来就可以去使用angular的各种指令了. ...

  8. 微信小程序之初探(常见语法 VS vue)常见问题(点击不生效,数据绑定)

    最近在调研微信小程序开发,对于一个前端小白来说,在各种框架都还用不熟的情况下,再来开发小程序确实还是不容易. 小程序出来之初,听过演讲,看过一点点儿视频,感觉和angular语法有点相似(PS:那是也 ...

  9. 混合开发 Hybird Ionic Angular Cordova web 跨平台 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

随机推荐

  1. DNS域名配置

    1.什么是DNS 2.DNS层次介绍及基础内容 3.DNS的工作原理及过程 域名服务器配置实战:    4.主域名服务器配置     5.辅域名服务器配置     6.缓存域名服务器配置 1.什么是D ...

  2. Mysql数据库中的输入命令各类知识总结

    1.链接数据库的命令---mysql-u root-p 回车,输入密码//在cmd上输入自己的账号密码 2.查看:show databases: 3.创建数据库:create +database+数据 ...

  3. vue组件之间通信的8种方式

    对于vue来说,组件之间的消息传递是非常重要的,下面是我对组件之间消息传递的常用方式的总结. props和$emit(常用) $attrs和$listeners 中央事件总线(非父子组件间通信) v- ...

  4. opencv 读取视频内容写入图片帧

    现在主要把自己平时用到的opencv功能记录到博客,一方面方便自己有时间来回顾,另一方便提供给大家一个参考. opencv 读取视频内容,把视频帧每一帧写成图片,存入电脑中.这个步骤是许多数据处理的基 ...

  5. iptables-restore - 恢复 IP Tables

    总览 SYNOPSIS iptables-restore [-c] [-n] 描述 DESCRIPTION iptables-restore 用来从 STDIN 给出的数据中恢复 IP Tables. ...

  6. matlab读取内容为二进制的TXT文件

    本方法同样适合读取十六进制和二进制以外的其他进制文件,txt使用一个最简单的命令就可以读取 textread 这是一个十分有用,简便的函数(对于fopen fscanf而言)读取二进制txt文件:假如 ...

  7. php产品细节图多图上传示例代码 无刷新

    前台文件代码 upload.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...

  8. sftp接口机上传脚本

    sftp只要有秘钥,就不需要输入密码. #!/bin/bash #上传现在时间的前一小时的文件 date=`date -d -1hour +%Y%m%d` hour=`date -d -1hour + ...

  9. VM架构设计文档初稿v0.01

    VM架构设计文档初稿v0.01 文档介绍 本文档是经过讨论,作为VM新架构设计开发中的重要依据.对该架构的整个系统的结构进行详实细致的描述.阐述框架结构,说明该架构所采取的设计策略和所有技术,并对相关 ...

  10. Ubuntu中linux虚拟机全屏

    登录客户机操作系统.在虚拟机中装载CD驱动器启动终端,使用tar解压缩安装程序,然后执行vmware-insall.pl安装VMware Tools. 1.进入文件界面,找到左侧“设备”右击“安装VM ...