angularjs - 在页面加载时运行控制器

时间:2016-01-22 19:47:13

标签: angularjs

我有以下Angular代码段。我想在页面加载时调用主页模板。这是如何实现的?此外,目前我的模板预先填充了我想要显示的文本。使用$ scope将数据传递到原始模板然后显示它是否更好。谢谢。

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

myApp.config(function($routeProvider) {

$routeProvider

.when('/', {
     templateUrl : 'pages/home.html',
     controller  : 'homeController',
})
});

myApp.controller('homeController', function($scope) {
//$scope.message = 'welcome to the home page';
});

更新:我想我可能已经发现了这个问题。我的目录中也有一个index.php文件。当我删除它似乎按预期工作。

2 个答案:

答案 0 :(得分:0)

尝试将指令ng-view放在您的主页上,例如:

<html>
    <body ng-app="myApp">
        <div ng-view=""></div>
    </body>
</html>

您也可以在https://docs.angularjs.org/api/ngRoute/directive/ngView

中看到该示例

答案 1 :(得分:0)

作为一种应该让您的首选页面立即显示的全能,我建议您在app.config()中使用otherwise()进行设置。

在配置功能中:

$routeProvider

.when('/', {
     templateUrl : 'pages/home.html',
     controller  : 'homeController',
})
.otherwise('/')

不可否认,这可能无法完全符合我的预期,因为您似乎正在使用默认的Angular-Router,而我正在使用UI-Router