久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長資訊網
最全最豐富的資訊網站

vuejs和angularjs有什么區別

區別:1、angularjs上手難,而vuejs簡單易學;2、angular的指令是“ng-xxx”,而vue是“v-xxx”;3、angular的所有指令和方法都是綁定在$scope上的,而vue的所有方法和指令都綁定在vue實例上。

vuejs和angularjs有什么區別

本教程操作環境:windows7系統、vue2.9.6版,DELL G3電腦。

使用Angularjs和Vue.js對比

之前項目都是使用Angularjs,(注明此處主要講Angularjs 1)在初步使用Vue.js后做一個簡單的對比筆記。
首先從理論上簡單說一下各自的特點,之后再用幾個小的例子加以說明。

Angular

  • 1,MVVM(Model)(View)(View-model)
  • 2,模塊化(Module)控制器(Contoller)依賴注入:
  • 3,雙向數據綁定:界面的操作能實時反映到數據,數據的變更能實時展現到界面。
  • 4,指令(ng-click ng-bind ng-model ng-href ng-src ng-if/ng-show…)
  • 5,服務Service($compile $filter $interval $timeout $http…)
  • 6,路由(ng-Route原生路由),ui-router(路由組件)
  • 7,Ajax封裝($http)

其中雙向數據綁定的實現使用了$scope變量的臟值檢測,使用$scope.$watch(視圖到模型),$scope.$apply(模型到視圖)檢測,內部調用的都是digest,當然也可以直接調用$scope.$digest進行臟檢查。值得注意的是當數據變化十分頻繁時,臟檢測對瀏覽器性能的消耗將會很大,官方注明的最大檢測臟值為2000個數據。

Vue

vue.js官網:是一套構建用戶界面的 漸進式框架。與其他重量級框架不同的是,Vue 采用自底向上增量開發的設計。Vue 的核心庫只關注視圖層,并且非常容易學習,非常容易與其它庫或已有項目整合。另一方面,Vue 完全有能力驅動采用單文件組件Vue 生態系統支持的庫開發的復雜單頁應用。

Vue.js 的目標是通過盡可能簡單的 API 實現響應的數據綁定組合的視圖組件

  • (1)模塊化,目前最熱的方式是在項目中直接使用ES6的模塊化,結合Webpack進行項目打包
  • (2)組件化,創造單個component后綴為.vue的文件,包含template(html代碼),script(es6代碼),style(css樣式)
  • (3)雙向數據綁定:界面的操作能實時反映到數據,數據的變更能實時展現到界面。
  • (4)指令(v-html v-bind v-model v-if/v-show…)
  • (5)路由(vue-router)
  • (6)vuex 數據共享
  • (7)Ajax插件(vue-resource,axios)

vue非常小巧,壓縮后min源碼為72.9kb,gzip壓縮后只有25.11kb,想比Angular為144kb,可以自駕搭配使用需要的庫插件,類似路由插件(Vue-router),Ajax插件(vue-resource,axios)等

Vue與 Angular 雙向數據綁定原理###

angular.js :臟值檢查

angular.js 是通過臟值檢測的方式比對數據是否有變更,來決定是否更新視圖,最簡單的方式就是通過 setInterval() 定時輪詢檢測數據變動,當然Google不會這么low,angular只有在指定的事件觸發時進入臟值檢測,大致如下:

  • DOM事件,譬如用戶輸入文本,點擊按鈕等。( ng-click )
  • XHR響應事件 ( $http )
  • 瀏覽器Location變更事件 ( $location )
  • Timer事件( $timeout , $interval )
  • 執行 $digest() 或 $apply()

vue數據劫持

vue.js 則是采用數據劫持結合發布者-訂閱者模式的方式,通過Object.defineProperty()來劫持各個屬性的setter,getter,在數據變動時發布消息給訂閱者,觸發相應的監聽回調。https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Object/definePropertydefineProperty

下面直接上代碼

首先當然是Hello World了

vue

<div id="app">   {{ message }} </div>  new Vue({   el: '#app',   data: {     message: 'Hello Vue.js!'   } })

Angular

<div ng-app="myApp" ng-controller="myCtrl">  {{message}} </div>  var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) {     $scope.message = "Hello world"; });

相比較來看,vue采用了json的數據格式進行dom和data的編寫,編寫風格更加靠進js的數據編碼格式,通俗易懂。

vue的雙向數據綁定

<div id="app">   <p>{{ message }}</p>   <input v-model="message"> </div>  new Vue({   el: '#app',   data: {     message: 'Hello Vue.js!'   } })

Angular的雙向數據綁定

<div ng-app="myApp" ng-controller="myCtrl">   <p>{{message}}</p>   <input ng-model="message"> </div>  var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) {     $scope.message = "Hello world!"; });

vue雖然是一個輕量級的框架,提供的API確非常多,包括一些便捷的指令和屬性操作,一般vue是指令使用(v-)操作符,相比angularjs指令使用(ng-)。其中vue.js還支持指令的簡寫方式:

  • (1)事件click

    <a v-on: click="fn"></a>

    簡寫方式:
    <a @click="fn"></a>

  • (2)屬性

    <a v-bind: href="url"></a>

    簡寫方式:
    <a :href="url"></a>

vue.渲染列表

<div id="app">   <ul>     <li v-for="name in names">       {{ name.first }}     </li>   </ul> </div>  new Vue({   el: '#app',   data: {     names: [       { first: 'summer', last: '7310' },       { first: 'David', last:'666' },       { first: 'Json', last:'888' }     ]   } })

Angularjs渲染列表

<div ng-app="myApp" ng-controller="myCtrl">   <li ng-repeat="name in names">{{name.first}}</li> </div>  var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) {     $scope.names = [       { first: 'summer', last: '7310' },       { first: 'David', last:'666' },       { first: 'Json', last:'888' }     ] });

vue的循環

<ul>     <li v-for="item in list">         <a :href="item.url">{{item.title}}</a>     </li> </ul>

angular和vue的渲染差不多

<div class="item" ng-repeat="news in  newsList">     <a ng-href="#/content/{{news.id}}">         <img ng-src="{{news.img}}" />         <div class="item-info">             <h3 class="item-title">{{news.title}}</h3>             <p class="item-time">{{news.createTime}}</p>         </div>     </a> </div>

vue和Angular處理用戶輸入

<div id="app">   <p>{{ message }}</p>   <button v-on:click="reverseMessage">Reverse Message</button> </div>  new Vue({   el: '#app',   data: { 	message: 'Hello Vue.js!'   },   methods: {     reverseMessage: function () {       this.message = this.message.split('').reverse().join('')     }   } })

<div ng-app="myApp" ng-controller="myCtrl">  <p>{{ message }}</p>  <button ng-click="reverseMessage()">Reverse Message</button> </div>  var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) {     $scope.message = "Hello world!";     $scope.reverseMessage = function() {         this.message = this.message.split('').reverse().join('')     } });

總結:angularjs和vuejs的區別

1、angularJS上手難,而vueJS簡單易學;

2、angularJS的指令都是ng-xxx,而vueJS的指令都是v-xxx;

3、angularJS的所有指令和方法都是綁定在$scope上的,而vueJS是new出來一個實例,所有的方法和指令都在這個實例上,一個頁面上可以有多個vue實例,但是angularJS的對象只能有一個;

4、angularJS是由google開發和維護的,vueJS是由個人維護的;

5、vueJS一般用于移動端的開發,而angularJS一般應用于大型的項目。

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
欧美日韩激情| 欧美在线网站| 久久久久欧美精品| 精品国产欧美日韩| 欧美日韩一区二区三区不卡视频 | av在线日韩| 国产精品流白浆在线观看| 日韩一区二区三免费高清在线观看| 国产偷自视频区视频一区二区| 亚洲在线免费| 日韩精品福利一区二区三区| 国产精品4hu.www| 日韩高清成人| 午夜在线播放视频欧美| 蜜臀精品一区二区三区在线观看| 麻豆91精品| 国产精品亚洲欧美日韩一区在线| 精品三级国产| 伊人久久婷婷| 久久国产三级精品| 久久九九精品| 六月丁香综合| 欧美视频久久| 国产欧美激情| 鲁鲁在线中文| 中文字幕日韩欧美精品高清在线| 久久国产人妖系列| 久久精品影视| 亚洲精品护士| 久草精品视频| 国产女优一区| 国产欧美日韩| 免费不卡中文字幕在线| 亚洲精品日本| 精品三级在线| 福利一区和二区| 激情视频一区二区三区| 日韩中文字幕无砖| 日韩在线欧美| 天堂va欧美ⅴa亚洲va一国产| 欧美激情视频一区二区三区在线播放| 亚洲高清影视| 粉嫩av一区二区三区四区五区| 国产在线观看91一区二区三区| 亚洲女同一区| 麻豆国产欧美日韩综合精品二区| 五月天av在线| 久久成人高清| 免费在线看一区| 福利一区二区| 国产精品欧美三级在线观看 | 久久最新视频| 午夜av一区| 久久黄色影院| 超级白嫩亚洲国产第一| 日韩中文欧美在线| 国产精品伦理久久久久久| 亚洲精品国产精品粉嫩| 欧美精品一区二区三区精品| 亚洲神马久久| 中文精品在线| 丝袜美腿一区| 欧美国产91| 巨乳诱惑日韩免费av| 国产精品亚洲综合在线观看| 日本一区二区三区视频在线看| 亚洲精品日本| 日本午夜精品久久久久| 91成人在线精品视频| 欧美日韩va| 精品视频一区二区三区在线观看 | 亚洲三级视频| 日本aⅴ精品一区二区三区| 国产精品一区毛片| 日韩精品导航| 国产亚洲观看| 国产精品亚洲综合久久| 精品中国亚洲| 日韩精品免费一区二区三区| 亚洲国内精品| 日韩av影院| 国产精品伦理久久久久久| 日韩欧美精品综合| 韩国一区二区三区视频| 激情久久中文字幕| 亚洲精品成a人ⅴ香蕉片| 精品久久网站| 性欧美精品高清| 久久精品天堂| 日韩制服丝袜av| 美女av一区| 国产精品日韩久久久| 亚洲另类av| 久久久人人人| 国产美女撒尿一区二区| 蜜桃精品在线| 九九99久久精品在免费线bt| 三级小说欧洲区亚洲区| 日本午夜精品视频在线观看| 欧美aa在线观看| 亚洲色图网站| 久久精品二区三区| 欧美日韩一区二区国产| 激情婷婷久久| 国产一区二区三区不卡av| 欧美午夜不卡影院在线观看完整版免费| 亚洲精品美女| 国产中文欧美日韩在线| 蜜桃视频免费观看一区| 日韩综合精品| 麻豆91精品视频| 91精品国产自产观看在线 | 亚洲午夜久久| 国产一区二区三区自拍| 久久精品xxxxx| 亚洲一区国产| 日韩成人精品一区二区| 国产精品亚洲欧美一级在线| 日本视频一区二区| 91精品国产成人观看| 欧美精品自拍| 欧美精选视频一区二区| 91亚洲国产高清| 精品国产乱码| sm久久捆绑调教精品一区| 国产精品99久久免费观看| 日韩有码av| 日本不卡视频在线观看| 日本不卡不码高清免费观看 | 蜜桃视频在线观看一区二区| 99精品视频在线| 成人日韩在线观看| 午夜精品成人av| 美女免费视频一区| 国产videos久久| av资源中文在线| 久久国产小视频| 亚洲免费观看| 亚洲三区欧美一区国产二区| 五月激激激综合网色播| 国产免费av一区二区三区| 热三久草你在线| 岛国av在线网站| 欧美成人高清| 在线一区免费观看| 日本在线成人| 久久精品国产一区二区| 亚洲成人va| 日韩免费小视频| 三级欧美韩日大片在线看| 香蕉久久一区| 精品91福利视频| 国内精品99| 快she精品国产999| 国产精品传媒麻豆hd| 日韩欧美字幕| 国产欧美日韩精品一区二区免费| 97精品一区| 久久激五月天综合精品| 欧美色图国产精品| 国产福利一区二区精品秒拍| 日韩精品欧美| 国产激情欧美| 日韩在线二区| 国产乱码精品一区二区亚洲| 亚洲国内欧美| 久久久91麻豆精品国产一区| 久久高清免费观看| 青青国产91久久久久久| 久久高清免费| 国产精品magnet| 在线观看一区| 99tv成人| 精品国产18久久久久久二百| 免费日韩一区二区| 香蕉人人精品| 国产成年精品| 欧美成a人片免费观看久久五月天| 日本欧美一区| 日韩影院精彩在线| 欧美亚洲综合视频| 欧美一区二区三区激情视频 | 亚洲自啪免费| 久久久国产亚洲精品| 九九九精品视频| 国产精品久久久久9999高清| 在线观看一区| 丝袜亚洲精品中文字幕一区| 欧美亚洲综合视频| 蜜桃国内精品久久久久软件9| 日本午夜精品| 在线日韩成人| 免费人成网站在线观看欧美高清| 国产欧美一区二区三区精品观看| 在线精品观看| 欧美在线首页| 麻豆一区二区在线| 蜜桃久久久久| 国产成人精品三级高清久久91| 国产一区二区三区四区二区|