為什么感覺學了vue之后編程能力下降了?
這幾天我也是因為一個項目而被迫使用vue,坦白的說vue和傳統的網站開發思路不同,導致愛的人愛死,老程序員煩死的現狀。
主要區別:
1傳統方式:我們做一個網站,首先創建幾個文件夾(css、js等等),頁面需要用的資源文件,都放到各自的文件夾里。然后創建若干個HTML網頁,一個個鏈接把這些若干網頁串起來就OK,網頁里需要有什么事件或效果,要么用原生js要么用jqurey,去操作某個dom,實現頁面變化。
調試的時候也很簡單,如果靜態網頁,瀏覽器就可以直接運行調試。asp、jsp、php、.net等動態網站,簡單配置一下iis或Tomcat,也就能直接調試。
2vue(這里用vue腳手架來舉例):
vue和傳統最大的區別就是,vue只有一個html頁面(也就是入口頁面,你也可以理解成主頁面),除了主頁面之外,其他的頁面都是html片段,以.vue為后綴的片段文件存在,用戶訪問網站的時候,第一次加載完整主頁面,后面的點擊其實就是變化html片段而已。(和老程序員理解的局部刷新有點像)
所以vue特別適合制作手機端項目,因為它只需要根據用戶的點擊,加載所需的片段而已。由于不用一頁一頁請求新網頁,所以這種機制會讓手機項目運行非常絲滑順暢。
但優點也是它的缺點,vue項目的特性決定它不適合做網站,稍微有點seo知識的人都明白,這種機制做的網站,機器人是爬不到任何內容的。
vue的部署也是讓我很詬病的,部署它需要折騰一大堆事兒。首先需要安裝nodejs,你可以暫時把它理解成和iis Tomcat類似的網站發布容器。因為只有在nodejs下才能調試vue腳手架項目。
nodejs裝完,然后在cmd命令行下,通過npm命令安裝一大堆各種庫插件。
這一堆事兒折騰完,你就可以通過一個命令創建一個vue腳手架,然后開始你的項目開發之旅。
很多老程序員被“vue腳手架”這個詞搞得云里霧里,簡單的說:上面折騰一大堆,就是為了最后敲一個命令,讓系統幫你在指定位置創建一組文件夾,然后vue能用上的各種js(百十多個吧)組件都放在這各個文件里,供你開發時候調用。
對比你之前的操作,相當于:你建好文件夾,在js文件夾里放好jqurey,和你常用的js。
所以這套步驟,開始讓我很不習慣,可能很多老程序員也不習慣。會讓你有種“為了做個小項目,先要部署一套大工廠的感覺”。
很多老程序員其實都是做小項目出身的草根,什么百萬千萬的迸發、什么團隊協作、前后端分離等話題,不是這類程序員關心的。他們往往即是美工也是程序員,即是前端也是后端。幾乎都是以快速交付項目為第一初衷,不想為了個環境來回折騰。所以一時間適應不了vue開發模式。
另外如果你的項目,定制化程度較高。我個人還是建議采用獨立html的傳統方式開發。
如果是移動端開發,vue的確是最佳選擇。順便提一下,vue和小程序幾乎是一摸一樣的套路,會一個兩個就都會了。
我也是花了2天時間,從排斥到接受的。目前用著還不錯。