国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

詳解Angular的雙向數據綁定(MV-VM)

2019-11-19 18:15:32
字體:
來源:轉載
供稿:網友

angular的核心MVVM,下面來看看MV(數據到視圖)。

<div ng-controller="Aaa">  <p>{{name}}</p></div><script type="text/javascript">  function Aaa($scope){     $scope.name = 'hello AngularJs';    setTimeout(function(){      $scope.name = 'Hi';     },2000);   };</script>

執行上面代碼,我們使用setTimeout延遲兩秒去更新數據(M),我們的視圖(V)并沒有發生改變。

其實數據確實發生改變,但是我們的視圖(V)并沒有及時刷新,原因是原生的setTimeout不具備刷新的功能。

angular為我們提供了setTimeout的服務,$timeout,需要在Aaa中引入該服務 !

<div ng-controller="Aaa">  <p>{{name}}</p></div><script type="text/javascript">  function Aaa($scope,$timeout){    $scope.name = 'hello AngularJs';    $timeout(function(){       $scope.name = 'Hi';    },2000);  };<script>

這樣就可以刷新視圖了,M(數據)到V(視圖)的過程。

如果我也想讓setTimeout也具有刷新視圖的功能怎麼辦 ? 可以借助$apply方法!

<div ng-controller="Aaa">  <p>{{name}}</p></div><script type="text/javascript">  function Aaa($scope){    $scope.name = 'hello AngularJs';    setTimeout(function(){      $scope.$apply(function(){        $scope.name = 'Hi';      });    },2000);  }<script>

也能實現刷新視圖!

在舉個例子:

<div id="Aaa" ng-controller="Aaa" ng-click="name='Hi'">  <p>{{name}}</p></div><script type="text/javascript">  function Aaa($scope){    $scope.name = 'hello AngularJs';  };</script>

我們在ID為Aaa的元素綁定了一個點擊事件,當發生點擊的時候將name值改為Hi,

當然,也可以傳遞一個函數,來實現更多的功能。

<div id="Aaa" ng-controller="Aaa" ng-click="show()">  <p>{{name}}</p></div><script type="text/javascript">  function Aaa($scope){    $scope.name = 'hello AngularJs';    $scope.show = function(){      $scope.name = 'Hi';    };  }</script>

看到了click,相信你也知道如何使用鼠標移入和移出的這些常用的事件了。

看最后一個例子,V(視圖)到M(數據)的過程。

<div ng-controller="Aaa">  <input type="text" ng-model="name"/>  <p>{{name}}</p></div><script type="text/javascript">  function Aaa($scope){    $scope.name = 'hello AngularJs';  };</script>

我們在input標簽上綁定了一個ng-model,這個就是綁定的數據,會默認填充到input的value上,當我們的input值發生改變的時候,對應在$scope中的數據也會發生改變,從而影響到視圖中的p標簽的值也會發生改變。

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持武林網!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 陈巴尔虎旗| 凌源市| 获嘉县| 禹州市| 石楼县| 万州区| 常宁市| 洪江市| 盱眙县| 开远市| 扶绥县| 龙里县| 莎车县| 红桥区| 大同市| 台中市| 永寿县| 宁明县| 盐池县| 竹溪县| 钟祥市| 永清县| 合阳县| 万荣县| 安乡县| 屯昌县| 岚皋县| 乌拉特后旗| 乐昌市| 祁门县| 井研县| 富民县| 沐川县| 富锦市| 左云县| 乐安县| 玉环县| 惠水县| 大洼县| 巧家县| 叶城县|