发表于: 2017-05-29 18:55:09
1 939
今天完成的事情:
学习复盘项目相关,准备方案评审。学习如何将逻辑,数据等分离。
明天的计划:
开始复盘项目。
遇到的问题:
1 复用相似功能,合理页面逻辑与数据:
首先,要遵守angular的习惯:不能强行用jq的思维方式使用,比如:
- 在 HTML 里使用 directive 来作为表现层的逻辑
- 使用定制的 directive 来操作 DOM
- 使用服务 service 来复用代码,然后再使用依赖注入添加到别的模块
- controller 里的 $scope 是唯一页面数据来源。不要直接修改 DOM。
- controller 只是用来操作 $scope 里的数据的,不要把业务逻辑放在这里
- controller 不要在全局范围
将分解的页面写成directive. 例如下面这个样子:
$compileProvider.directive('commonHeader', function($compile) {
return {
templateUrl: 'templete/common/common_header.html',
replace: true,
transclude: false,
restrict: 'A',
scope: false
};
});
构建合理的mvc目录结构,类似:
templates/
_login.html
_feed.html
app/
app.js
controllers/
LoginController.js
FeedController.js
directives/
FeedEntryDirective.js
services/
LoginService.js
FeedService.js
filters/
CapatalizeFilter.js
也可以根据项目需求,功能不同来对项目稳健进行合理的分组,尽量避免根据一个页面混杂不同的可复用逻辑,数据等。
收获:以上
评论