本文主要講述對命名規範、工具、外掛的一些建議,具體內容參見【參見】字樣的超連結
本文將帶你調整開發姿勢,先來看以下幾點
如果公司都不同意(你不敢說不賴我),那隻好在自己這邊下手了。一些看起來繁瑣的事情,有時反而讓我們輕鬆。
如果你說這個不重要我不會反駁你的,因為每個人有自己的想法。但是有一套自己的命名規範,對在一段時間以後回頭來看程式碼有很大的幫助。
在vscode中下載 vscode-icons外掛後,一些關鍵詞資料夾圖示會被替換成特殊圖示,例如:
利用好關鍵詞資料夾命名(注意不要濫用),會提升你找檔案的速度
不要重複資料夾功能,意思就是,如果你有這麼一個資料夾 src\assets\imgs,就不要再建立src\assets\images了。
如果有圖片沒有放在 src\assets\imgs 而放在了另外的資料夾,也是不可取的,這樣會導致圖片的路徑難以追蹤,如果想對圖片進一步分類,可以 src\assets\imgs\icons,以此類推,其他型別的檔案也是如此。
如果你想做一個第三方小工具的 js 資料夾,那麼可以 src\plugins ,自己寫的公共方法,可以建立成src\utils或者src\tools等
注意:
一個資料夾中的主檔案最好和資料夾同名,如 src\views\remoteBD\remoteBD.vue ,不要使用 src\views\remoteBD\index.vue 或者 src\views\remoteBD\main.vue
做到以上兩個方面,你將擁有一個乾淨整潔、分類明確的檔案樹,恭喜。
見名知意是唯一的要求,千萬不要怕名字長,還有一件事,動詞名詞的前後順序一定要固定,比如:sendMsgToServer,是動詞在前,名詞在後,serverMsgSender就是名詞在前,動詞在後。
這個雖然無傷大雅,但是在日常的閱讀中會稍微增加一點負擔。
變數的命名也不能以簡單的、無意義的字元命名,比如:let data = {}、let str1 = "" 、let newArr = []。改成 let originalData= {}、let msg= "" 、let recArr= [] 更好一點
推薦使用less作為前處理器,你可以完全不用學習less,而只使用它的巢狀功能,更多的功能還需要你在實際開發中探索。
css選擇器命名只需要見名知意即可,不推薦使用短橫線("-")分類,推薦使用更多的class名來分類,很多人可能習慣
&-xxx這種寫法,但是這種寫法可讀性極差,如果想為某些元素加同樣的樣式,可以令起一個類,比如
.flex{
display:flex;
}
這樣,把flex類加到任何元素即可。摒棄了短橫線後,還可以便捷的雙擊選中並搜尋。這裡推薦一個vscode外掛:CSS Navigation
很多人只知道es6新語法有 let const、箭頭函數、陣列物件解構什麼的,很多小的實用功能卻很少有人用過。
可選鏈操作符
//const name = obj && obj.name;
const name = obj?.name;
字串模板和物件屬性表示式
//let obj = {};
//let index = 1;
//let key = `topic${index}`;
//obj[key] = '話題內容';
let obj = {};
let index = 1;
obj[`topic${index}`] = '話題內容';
非空判斷
//if(value !== null && value !== undefined && value !== ''){
//...
//}
if((value??'') !== ''){
//...
}
更多實用語法,參見:你會用ES6,那倒是用啊! 、ES6基本全部語法
powerToys是微軟開發的一款小工具合集,功能如圖所示
簡直是前端開發必備工具
瀏覽器外掛可以幫你完成很多工作,比如介面測試、管理cookie和本地快取,甚至可以做到自動化流水線,如果你還不會開發瀏覽器外掛,參見:一文學會瀏覽器外掛 不要重複造輪子!
學習node.js(或任何一個後端語言)和mysql(或任何一個資料庫)都對前端開發有幫助,至少你應該知道應該把鍋甩給誰,而不是唯唯諾諾不敢說話,個人推薦學習後端語言從node.js(好上手)學起,資料庫從mysql(好上手)學起。這裡推薦一個學習全棧開發的開源專案:Vue-Admin-Xmw-Pro ,後端使用的egg.js(node.js框架)也是好上手的一款,鑽透這個專案,就可以獨立開發一個全棧專案了
學習強型別的語言可能會給你帶來一些好處,但是在前端開發中的效率提升不明顯。比如,一些小型專案如果使用TS開發,只會徒增負擔和降低效率。所以不用擔心不會TS會影響你的仕途,大部分專案是用不到的。如果希望學一款強型別語言,也不推薦學習TS(TS不能稱之為一門語言,它只是js的型別檢查工具),可以考慮從java入手,更完整的體驗強型別的語言。
當你掌握了上述內容,你就擁有了打敗80%的人的快速麵向業務的能力,加油,召喚師 前端人