程式碼重構知識點記錄
本週學習教程並沒有遇到什麼問題。這周學到了教程中程式碼重構的部分,原本程式碼還能勉勉強強的理解,而經過程式碼重構之後,不但覺得麻煩,而且還很難理解。如果我自己寫一部分模組的話,以我現在的水平很難在完成功能之後,再進行教程中那樣的重構。
在程式碼重構過程中講了好幾個新的知識點,我就在這裡做一下筆記,以便以後還能想起來有這麼個功能,嘗試進行使用
一、指令
作用:消除C層中重複的方法,V層中相同的程式碼
建立方式:
yo angular:directive name;
使用方式:
V層使用:
1.建立對應的V層檔案
2.將template設定為對應檔案的路徑
3.將V層中重複的程式碼放入該檔案中,在原始碼處呼叫指令
C層使用
1.將重複的方法寫入命令列建立的指令檔案中
2.將self設為空物件,並且傳入相應的引數
3.在return中呼叫該方法
二、$httpProvider
作用:將url中相同的部分消除
使用方式:
在路由定義檔案中加入下面的程式碼
$provide.factory('myHttpInterceptor', function($q) { return { // optional method 'request': function(config) { // 如果字尾為html則不改寫 var suffix = config.url.split('.').pop(); if (suffix !== 'html'){ config.url = 'http://127.0.0.1:8080' + config.url; } return config; } }; }); $httpProvider.interceptors.push('myHttpInterceptor'); $urlRouterProvider.otherwise('/main');
並注入$provide,$httpProvider
效果
http://127.0.0.1:8080/Teacher/ -> /Teacher/