角度部分标题视图

时间:2015-07-08 17:54:51

标签: javascript angularjs angularjs-directive partials

在尝试学习AngularJS结构的最佳实践时,我已经在几个地方读过部分视图应该作为指令实现,以便我为我的应用程序标题做了什么。

现在,对于我的特定标题,我有一个后退按钮,只有在不在主页上时才能看到。在最终开始工作之后,我不确定我对我的解决方案感到满意。例如,它没有使用带有var vm = this;的控制器方法,如果可以避免的话,我宁愿不让它拥有专用的范围/控制器。

这是我的headerView的指令代码:

(function () {

    'use strict';

    function appHeader () {
        return {
            restrict: 'E',
            templateUrl: 'shared/header/headerView.html',
            controller: function ($scope, $route, $location) {
                $scope.homeUrl = 'start/' + $route.current.params.id;
                $scope.isHomeUrl = function () {
                    if($location.path() == $scope.homeUrl) {
                        return true;
                    }
                    return false;
                };
                $scope.backClick = function() {
                    window.history.back();
                    return false;
                };
            }
        }
    };

    angular.module('myApp').directive('appHeader', appHeader);

})();

您如何看待,对于带有后退按钮的标题,您会以另一种方式执行此操作吗?建议?

1 个答案:

答案 0 :(得分:1)

Angular UI Router比指令更适合您的需求。

看一下这个question,写得很好,并且有一个有效的傻瓜!

至于 controllerAs 方法,请查看此stackoverflow question