发表于: 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

也可以根据项目需求,功能不同来对项目稳健进行合理的分组,尽量避免根据一个页面混杂不同的可复用逻辑,数据等。

收获:以上


返回列表 返回列表
评论

    分享到