【发布时间】:2014-02-17 09:44:29
【问题描述】:
我正在尝试使用路由和视图制作一个非常简单的应用程序,当单击按钮时,它会显示测试文本变为“单击”。
我有一个带有 ng-view 的 index.html 文件,可以正确调用 test.html 视图。该视图应该使用带有简单模型的 testCtrl.js。
但是加载的时候,好像调用了view,但是scope有问题,或者控制器有问题。当我点击一个按钮时,单词 test 应该变成“click”,但什么也没有发生。
这里是 index.html
<body ng-app="simtoolbelt">
<div ng-view></div>
<script src="js/modules/angular-route.min.js"></script>
<script src="js/controllers/testCtrl.js"></script>
<script src="js/vendor/jquery.js"></script>
<script src="js/foundation.min.js"></script>
<script>
$(document).foundation();
</script>
这里是处理路由和视图的 app.js:
var simtoolbelt = angular.module('simtoolbelt', ['ngRoute']);
simtoolbelt.config(['$routeProvider',
function($routeProvider) {
$routeProvider.
when('/test', {
templateUrl: 'views/test.html',
controller: 'testCtrl'
}).
otherwise({
redirectTo: '/test'
});
}]);
测试控制器:
simtoolbelt.controller('testCtrl', ['$scope', function($scope){
$scope.test = "test";
$scope.change = function($scope){
$scope.test = "Click";
};
}]);
最后是测试视图:
<div ng-controller="testCtrl">
<h1 ng-model="test">Le {{test}} fonctionne</h1>
<button ng-click="change()">Click</button>
</div>
所有这些都在本地主机中,我真的不知道我在错过什么......谢谢你们能给我的任何帮助!
【问题讨论】:
标签: angularjs controller routes views angularjs-scope