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

首頁 > 語言 > JavaScript > 正文

Vue代碼整潔之去重方法整理

2024-05-06 15:36:05
字體:
來源:轉載
供稿:網友

在開始本篇的主題之前,讓我們把上次遺留下來的問題都清理一下:

將其他組件中 axios 請求的地方封裝起來。

這里就不把代碼放在開頭了,相關代碼都放在文末,有興趣了解的童鞋可以先往下翻。

好了, 我們現在把上篇剩下的任務給完成了,接下來我們來正式開始本篇內容吧。

去重是什么

字面上意思:去除重復,在項目中,不可避免的會出現重復代碼。但是如果不好好去處理這些重復代碼,那很有可能就會給你很多“驚喜”。

如何為“重復” 下一個定義呢?

從最淺顯的層次來看, 相同即是重復。在我們上面的代碼中,每一個組件中都有這么一行代碼:

import RequestSender from '@/requestSender';

 

這就是重復代碼,在每一個需要發起請求的組件中你都會需要寫上這么一行代碼。那么讓我們就這個列舉一些可能出現的問題:

某一天修改了文件名

某一天移動了該文件

那么項目中需要修改的地方將會是多少呢?而在修改中會產生手誤的概率又會是多少呢?以上還是在單人開發的時候,如果團隊協作開發,這些情況的概率又會是什么樣的呢。

如何去重

當然,對于上面這種引入型的代碼,類似移動文件,修改文件名這種操作。IDE 就能很好的幫你處理,比如 WebStorm 如果你使用重構相關的功能去重命名,那么它會找出所有 “疑似”引用的代碼片段,你可以選擇所有相關的引用同時修改。

這是一種手段,很好的解決了上面這些問題。

那么讓我們來看看另一個重復代碼的問題:

class RequestSender {  static GetBlogList() {    return axios.get('https://451ece6c-f618-436b-b4a2-517c6b2da400.mock.pstmn.io/list');  }  static Publish(data) {    return axios.post('https://451ece6c-f618-436b-b4a2-517c6b2da400.mock.pstmn.io/publish', data);  }  static Login(data) {    return axios.post('https://451ece6c-f618-436b-b4a2-517c6b2da400.mock.pstmn.io/login', data);  }  static Signup(data) {      return axios.post('https://451ece6c-f618-436b-b4a2-517c6b2da400.mock.pstmn.io/signup', data);  }}

上面的代碼, 重點不在函數噢。 仔細看看它們有哪些地方重復了。

光從代碼上來看,其實有很多“重復”的地方,比如說 returnstaticaxios.getaxios.post

這些重復有一部分是語法,有一部分是調用。這些都是不可避免的,因此這些重復代碼并不在我們需要重構的范圍內。那么,究竟是哪段代碼呢?

https://451ece6c-f618-436b-b4a2-517c6b2da400.mock.pstmn.io

準確來說,它并不算是代碼。而是“硬編碼”,從整體代碼上來看,這是目前所有后臺接口的

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 抚顺市| 白银市| 康乐县| 田东县| 望城县| 丁青县| 南木林县| 连江县| 育儿| 榕江县| 阿拉善盟| 彝良县| 凤翔县| 确山县| 安塞县| 保定市| 三江| 婺源县| 富裕县| 漠河县| 福海县| 石景山区| 汉源县| 宁南县| 怀集县| 肃宁县| 平顶山市| 高唐县| 三明市| 青田县| 华蓥市| 革吉县| 德格县| 婺源县| 芒康县| 来宾市| 黎平县| 澄迈县| 永福县| 南投市| 平安县|