0

我正在尝试创建一个单页角度应用程序,但我不知道如何加载特定控制器视图的样式,如果控制器范围只能应用于正文元素。

这是整个 Angular 应用程序的基本布局:

<!DOCTYPE html>
<html ng-app="app">
<head>
    <link href="/styles/some-basic-styles.css" rel="stylesheet" />

    <script src="/scripts/angular.min.js"></script>
    <script src="/script/custom/app.js"></script>
</head>
<ng-view></ng-view>
</html>

那个 app.js 路由:

app.config(function ($routeProvider) {
  $routeProvider
    .when('/somepage', {templateUrl: 'views/someView.html', controller: 'someController'});
 $routeProvider
    .when('/anotherpage', {templateUrl: 'views/anotherView.html', controller: 'anotherController'});
});

示例视图:

<body ng-controller="someController">
    <!--some html code here-->
<script src="/scripts/someController.js"></script>
</body>

那么,如果只能从全局模板访问,我该如何更改页面标题或在视图中添加样式/脚本?

我认为我误解了某些东西,或者我必须学习有关 Angular 的其他知识,但那是什么?谢谢你的帮助!

4

2 回答 2

0

我不确定,但是你可以定义一个 ng-controller ,然后使用标准的角度绑定来实现你想要的任何东西htmlRootController

如果这不起作用,那么总是有$rootScope. 上定义的属性\方法$rootScope可以在ng-app.

于 2013-10-19T10:33:28.033 回答
0

For the title you can do in the controller like

$window.document.title = 'My title';

or better set up a service like

app.factory('WindowUtils', function($window) {
        return {
           setTitle:function(str){
              $window.document.title = str;
           }
        }
    })

for the style I don't understand the trouble because of you can put all the styles in your styles.css globaly for the whole application.

于 2013-10-19T13:49:05.700 回答