zoukankan      html  css  js  c++  java
  • angularjs学习笔记

    angularjs学习网站

    1.第一个小例子(双向数据绑定)

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <script type="text/javascript" src="../angular-1.3.0-beta.4/angular.min.js"></script>
        </head>
        <body ng-app>
            <input ng-model="name" value=""/>{{name}}
        </body>
    </html>

    ng-app是告诉angularjs哪一块开始归angularjs去解析,管理

    ng-model是数据模型绑定,是双向的绑定,modle和view改变任何一个,都会变化

    2.控制器  index.html

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <script type="text/javascript" src="../angular-1.3.0-beta.4/angular.min.js"></script>
            <script type="text/javascript" src="index.js"></script>
        </head>
        <body ng-app>
            <div ng-controller="firstController">
                <input type="text" ng-model="username"/>{{username}}
            </div>
        </body>
    </html>

    ng-controller是控制器,表示控制该模块

    index.js

    var firstController=function($scope){
        //申明一个model
        $scope.username="suncj";
    }

    参数必须是$scope,这是一个作用域

    3.ng-bind是为了解决{{}}取值加载慢时,会出现{{}},例如{{username}},如果angularjs加载慢的话,页面会先出现{{username}},这样很不好看,为了解决这个问题可以用ng-bind

    <div ng-bind="username"></div>

    这样的话,如果没加载完,页面什么也不会显示,有数据才会显示。

     如下,效果是一样的:

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <script type="text/javascript" src="../angular-1.3.0-beta.4/angular.min.js"></script>
            <script type="text/javascript" src="index.js"></script>
        </head>
        <body ng-app>
            <div ng-controller="firstController">
                <input type="text" ng-model="username"/>
                <span ng-bind="username"></span>
            </div>
        </body>
    </html>

     4.$apply的运用

    $apply可以触发脏检查,让变量改变时通知修改

    例如时间的动态显示

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <script type="text/javascript" src="../angular-1.3.0-beta.4/angular.min.js"></script>
            <script type="text/javascript" src="index.js"></script>
        </head>
        <body ng-app>
            <div ng-controller="firstController">
                {{date}}
            </div>
        </body>
    </html>

    index.js

    var firstController=function($scope){
    
        $scope.date=new Date();
        setInterval(function(){
            $scope.$apply(function(){
                $scope.date=new Date();
                //会去触发脏检查,时间会动态改变
            })
        },1000)
    }

    这样页面就会动态显示时间,如果不用$apply则不会动态改变

    如下就不会变化(时间改变时,页面确没变化)

    var firstController=function($scope){
    
        $scope.date=new Date();
        
        setInterval(function(){
                $scope.date=new Date();
        },1000)
    }
  • 相关阅读:
    Ribbon 负载均衡搭建
    MicroService 微服务提供者搭建
    转 Spring boot 集成 Dubbo 快速搭建
    (转)Spring boot 集成Kafka
    转 Spring boot 集成ActiveMQ(包含双向队列实现)
    (转)异步实现服务器推送消息(聊天功能示例)
    (转)Spring boot 配置异步处理执行器
    (转)SSH框架快速搭建(Maven)
    (转)Hbase 操作工具类
    (转)Java AES加密算法工具类
  • 原文地址:https://www.cnblogs.com/suncj/p/4126860.html
Copyright © 2011-2022 走看看