AngularJs數(shù)據(jù)綁定

數(shù)據(jù)的綁定:單項數(shù)據(jù)綁定和雙向數(shù)據(jù)綁定

1、單項數(shù)據(jù)綁定(模型到視圖)

<body ng-app="app">
     <ul ng-controller="DemoController">
         <li>{{name}}{{age}}</li>
         <li ng-cloak>{{name}}{{age}}</li>
         <li ng-bind="name"></li>
         <li ng-bind-template="{{age}}{{name}}"></li>
     </ul>
<!--引入angularjs-->
<script src="js/angular.min.js"></script>
<script>
//    單項數(shù)據(jù)綁定姜贡,$scope-->view
    var app = angular.module("app",[]);
    app.controller("DemoController",['$scope',function ($scope) {
//        $scope就是模型
        $scope.name = "張三";
        $scope.age = 10;
    }])
</script>
</body>

運行結(jié)果:

運行結(jié)果.png

其中綁定數(shù)據(jù)有兩種方式:“{{}}”雙花括弧或者ng-bind兩種方式,但是兩者的區(qū)別在與使用“{{}}”會發(fā)生“閃爍”,原因很簡單磷支,頁面在解析的時候是從上往下執(zhí)行的谒撼,當(dāng)執(zhí)行到{{name}}是還沒有加載angular js庫,所以會發(fā)生“閃爍”雾狈,當(dāng)然也有解決這種現(xiàn)象的方法就是在標(biāo)簽中加上ng-cloak指令可以避免“閃爍”廓潜;
同時綁定兩個數(shù)據(jù)有兩中方式(ng-bind-template):

         <li ng-cloak>{{name}}{{age}}</li>
         <li ng-bind-template="{{age}}{{name}}"></li>

2、雙向數(shù)據(jù)綁定箍邮,用于表單(視圖向模型傳遞數(shù)據(jù))

<body ng-app="app">
//視圖
<div ng-controller="DemoController">
    <input type="text"  ng-model="msg">
    <h2>小明說:{{msg}}</h2>
</div>
<!--引入angularjs-->
<script src="js/angular.min.js"></script>
<script>
    //    單項數(shù)據(jù)綁定茉帅,$scope-->view
    var app = angular.module("app",[]);
    app.controller("DemoController",['$scope',function ($scope) {
//        $scope就是模型
        $scope.show =function () {
            alert($scope.msg);
        }
    }])
</script>
</body>

運行結(jié)果:

運行結(jié)果.png

通過為表單元素添加ng-module指令實現(xiàn)視圖向模型數(shù)據(jù)的綁定。
通過ng-init可以初始化模型:

<div ng-controller="DemoController" >
    <input type="text"  ng-model="msg" ng-init="msg='你飯吃了嘛'">
    <h2>小明說:{{msg}}</h2>
</div>

運行結(jié)果:

運行結(jié)果.png

這樣在頁面剛加載完就會默認(rèn)填充一個數(shù)據(jù)锭弊;
當(dāng)然除了這些堪澎,還有其他的,給按鈕綁定單擊味滞,雙擊,鼠標(biāo)移出事件等等:

<body ng-app="app">
<div ng-controller="DemoController" >
    <!--<input type="text"  ng-model="msg" ng-init="msg='你飯吃了嘛'">-->
    <!--<h2>小明說:{{msg}}</h2>-->
    <button ng-click = "fun1()";>點擊我</button>
    <button ng-dblclick = "fun2()";>點擊我樱蛤,我被雙擊了</button>
</div>
<!--引入angularjs-->
<script src="js/angular.min.js"></script>
<script>
    //    單項數(shù)據(jù)綁定,$scope-->view
    var app = angular.module("app",[]);
    app.controller("DemoController",['$scope',function ($scope) {
//        $scope就是模型
        $scope.fun1=function () {
            alert("我被點擊了");
        }
        $scope.fun2=function () {
            alert("我被雙擊了");
        }
    }])
</script>
</body>
單擊事件.png

3剑鞍、循環(huán)遍歷元素

<body >
<div class="box" ng-app="app">
    <div ng-controller="Democontroller">
        <ul>
            <li ng-repeat="c in course">{{c.name}},{{c.age}}歲</li>
        </ul>
    </div>
</div>
<!--引入angularjs-->
<script src="js/angular.min.js"></script>
<script>
    var app = angular.module('app',[]);
    app.controller('Democontroller',['$scope',function ($scope) {
        $scope.course =[
            {name:"劉德華",age:30},
            {name:"薛之謙",age:28},
            {name:"范冰冰",age:20}
        ]
    }]);
</script>
</body>

運行結(jié)果:

運行結(jié)果.png

還可以通過ng-switch-when過濾:

<body >
<div ng-controller="DemoController">
    <ul>
        <li ng-repeat="item in items" ng-switch="item">
            <span ng-switch-when="css">{{item}}</span>
        </li>
    </ul>
</div>
<!--引入angularjs-->
<script src="js/angular.min.js"></script>
<script>
    var App = angular.module('App', []);
    App.controller('DemoController', ['$scope', function ($scope) {
        $scope.items = ['html', 'css', 'js'];
    }]);
</script>
</body>
運行結(jié)果.png

就是說昨凡,當(dāng)items的值為css時才顯示出來。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蚁署,一起剝皮案震驚了整個濱河市便脊,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌光戈,老刑警劉巖哪痰,帶你破解...
    沈念sama閱讀 216,591評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異久妆,居然都是意外死亡晌杰,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評論 3 392
  • 文/潘曉璐 我一進(jìn)店門筷弦,熙熙樓的掌柜王于貴愁眉苦臉地迎上來肋演,“玉大人,你說我怎么就攤上這事烂琴〉猓” “怎么了?”我有些...
    開封第一講書人閱讀 162,823評論 0 353
  • 文/不壞的土叔 我叫張陵奸绷,是天一觀的道長边灭。 經(jīng)常有香客問我,道長健盒,這世上最難降的妖魔是什么绒瘦? 我笑而不...
    開封第一講書人閱讀 58,204評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮扣癣,結(jié)果婚禮上惰帽,老公的妹妹穿的比我還像新娘。我一直安慰自己父虑,他們只是感情好该酗,可當(dāng)我...
    茶點故事閱讀 67,228評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著士嚎,像睡著了一般呜魄。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上莱衩,一...
    開封第一講書人閱讀 51,190評論 1 299
  • 那天爵嗅,我揣著相機(jī)與錄音,去河邊找鬼笨蚁。 笑死睹晒,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的括细。 我是一名探鬼主播伪很,決...
    沈念sama閱讀 40,078評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼奋单!你這毒婦竟也來了锉试?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,923評論 0 274
  • 序言:老撾萬榮一對情侶失蹤览濒,失蹤者是張志新(化名)和其女友劉穎呆盖,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體匾七,經(jīng)...
    沈念sama閱讀 45,334評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡絮短,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,550評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了昨忆。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片丁频。...
    茶點故事閱讀 39,727評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖邑贴,靈堂內(nèi)的尸體忽然破棺而出席里,到底是詐尸還是另有隱情,我是刑警寧澤拢驾,帶...
    沈念sama閱讀 35,428評論 5 343
  • 正文 年R本政府宣布奖磁,位于F島的核電站,受9級特大地震影響繁疤,放射性物質(zhì)發(fā)生泄漏咖为。R本人自食惡果不足惜秕狰,卻給世界環(huán)境...
    茶點故事閱讀 41,022評論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望躁染。 院中可真熱鬧鸣哀,春花似錦、人聲如沸吞彤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽饰恕。三九已至挠羔,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間埋嵌,已是汗流浹背破加。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留莉恼,地道東北人拌喉。 一個月前我還...
    沈念sama閱讀 47,734評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像俐银,于是被迫代替她去往敵國和親尿背。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,619評論 2 354

推薦閱讀更多精彩內(nèi)容