日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

面试官:react和vue有什么区别吗?

發(fā)布時間:2025/3/20 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 面试官:react和vue有什么区别吗? 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前言

大家好呀,清明節(jié)這兩天有沒有出門踏青掃墓呢!!!

言歸正傳,這是作者面試系列的第二篇文章!!!!!!!


react和vue是什么?有啥區(qū)別嗎?

三大框架之二,大家應(yīng)該都不會陌生,都有學(xué)習(xí)過或者開發(fā)中使用。

但是他們到底有啥區(qū)別呢?這個就是我們這篇文章所需探討并學(xué)習(xí)的。

開始!

MVC 和 MVVM

首先,來說明下這些字母代表的含義

  • M:Model 模型
  • V:View 視圖
  • C:Controller 控制器
  • VM:ViewModel 視圖模型

首先說下MVC,大家肯定也知道三大框架中的另外一個(anuglar)。

如果你寫過angular那就肯定能很清楚的了解這個含義,看如下代碼:

<input ng-model="ball.basketball" />.contronller('BallController', ($scope) => {const ball = {basketball: '我是蔡徐坤'}$scope.ball = ball }) 復(fù)制代碼

input標(biāo)簽很好理解,就是MVC中的V(view)視圖。

controller顧名思義,就是MVC中的C(controller)控制器。

ball的話就是MVC中的M(model)模型。

MVC的概念很簡單,你要展示一個籃球的頁面。

  • 設(shè)置一個籃球的模型放在那等待使用。
  • 寫一個你需要展示籃球的視圖。
  • 使用控制器來讓模型和視圖交互。
  • 看起來MVC的概念很舒服,框架的很規(guī)范,但是代碼量多了之后,就會顯得整個項目很臃腫,一點(diǎn)都不靈活。

    作者有幸維護(hù)過一個稱為“屎山”的angular1.x項目,因為經(jīng)過上百次(大概有)的需求迭代后,每個controller的代碼超過2000行,每次修bug和寫新需求,都需要維護(hù)很多方方面面的東西。

    然后我們來了解下MVVM。

    <input v-model="ball.basketball" /> let vm = new Vue({data: {ball: {baskertball: '蔡徐坤就是我'}} }) 復(fù)制代碼
    • M:Model 模型
    • V:View 視圖
    • VM: ViewModel 視圖模型

    其實(shí)看代碼就理解了,vm其實(shí)就是vue對象。它的功能就是綁定到view上,Model里的籃球不管更新,還是做其他操作,都會通過vm來通知派發(fā)至view。

    這樣做的好處呢,第一點(diǎn),一個業(yè)務(wù)邏輯你就不用寫很多遍。類似一個shopcart的功能,你把它的封裝成一個組件(ViewModel)在很多地方都可以直接引入調(diào)用。

    跑題了

    寫著寫著作者就覺得跑題了,其實(shí)vue和react都是借鑒了mvvm的概念思想,加上工程師自己的想法而出現(xiàn)的兩個優(yōu)秀框架。

    他們的區(qū)別:

  • vue的標(biāo)簽如v-model,比react的方便,其實(shí)也是一層封裝好的語法糖,綁一個input也就不用再寫change事件之類的。
  • react的jsx功能很強(qiáng)大,擴(kuò)展性極強(qiáng)。
  • vue的dom操作很方便,各種方便的for指令 if指令等等。
  • react的思想很棒,各種抽象和模式使得代碼更加美觀等等。

  • react和vue有什么區(qū)別嗎?你可以這樣說!

  • 引出mvc和mvvm的概念。
  • 講解react和vue的底層思想。
  • 說出他們的優(yōu)點(diǎn)和缺點(diǎn)。
  • 實(shí)踐:你在xx項目中,因為xx問題所以選擇xx框架。
  • 最后說出結(jié)論。
  • 例如作者自己對這個問題的解答如下:

  • mvc和mvvm具體是指xxxxxxx,他們的區(qū)別是xxxx,各方的優(yōu)缺點(diǎn)xxxx。
  • vue的底層是用xxxx實(shí)現(xiàn)的,另外碰到數(shù)組的話因為有xx缺陷,vue的底層是重寫了關(guān)于數(shù)組的八個函數(shù)等等。
  • react的jsx功能強(qiáng)大,靈活性強(qiáng),但是代碼必須要規(guī)范,每個人都有自己的代碼風(fēng)格。 4.因為項目的迭代更新很快,便于多人開發(fā),所以我選擇的是xx框架。
  • 其實(shí)用任何框架都要根據(jù)真實(shí)環(huán)境下的各種因素結(jié)合,并不是哪個框架就是強(qiáng)無敵,拿起來直接黏貼復(fù)制一把梭的。

  • 好了這篇需要講的東西已經(jīng)結(jié)束了。
    這是第二篇關(guān)于框架優(yōu)勢的一篇文章。

    面試系列第一篇: 面試官:你知道Callback Hell(回調(diào)地獄)嗎?

    如果您有收獲或者疑問請在下方評論,求贊!謝謝觀看到這里。

    轉(zhuǎn)載于:https://juejin.im/post/5ca6fd2f6fb9a05e643def4f

    總結(jié)

    以上是生活随笔為你收集整理的面试官:react和vue有什么区别吗?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。