尝试在AngularJS中的所有页面上设置静态标头

时间:2015-01-22 05:05:56

标签: javascript html angularjs

我正在尝试在所有页面上设置标题,我在这里使用AngularJS是我当前的设置:

在我的HTML中我有:

 <html ng-app="webApp">
<script src="/vendor/angular.min.js"></script>
<script src="/controller.js"></script>

<head>
    <title>Home</title>
</head>

<body>
    <!-- Header -->
    <div ng-controller="HeaderCtrl">
        <div ng-include src="header.url"></div>
        <script type="text/ng-template" id="header.html"></script>
    </div>
    <!-- /Header -->

对于我的控制器我有这个:

var webApp = angular.module('webApp', []);

function HeaderCtrl($scope) {
    $scope.header = {name: "header.html", url: "/assets/headerFooter/header.html"};
}

但它一直说我的HeaderCtrl没有定义,它不是一个函数。我在Angular相当新,所以我很困惑为什么似乎不想为我工作。我使用这个问题作为参考来获得一个想法设置:How to have a common header shared by all webpages in AngularJS?

也许我误读了它,现在我很明显,因为我非常累。只是想在睡觉前让这个工作......

提前致谢。

1 个答案:

答案 0 :(得分:1)

这是因为你的角度模块&#39; webApp&#39;不知道控制器&#39; HeaderCtrl&#39;。您需要添加此

webApp.controller('HeaderCtrl', HeaderCtrl);

示例: http://jsfiddle.net/h2mku6L2/1/

注意:我注释掉了一些部分,因为我没有header.html文件。取消注释JS&amp; amp; HTML