本周学习教程并没有遇到什么问题。这周学到了教程中代码重构的部分,原本代码还能勉勉强强的理解,而经过代码重构之后,不但觉得麻烦,而且还很难理解。如果我自己写一部分模块的话,以我现在的水平很难在完成功能之后,再进行教程中那样的重构。
在代码重构过程中讲了好几个新的知识点,我就在这里做一下笔记,以便以后还能想起来有这么个功能,尝试进行使用
一、指令
作用:消除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/
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。