【发布时间】:2018-03-19 10:02:36
【问题描述】:
尝试在 AngularJs 上进行简单的路由。我将 ng-app 添加到 html 一次。我所有的 javascript 都在 1 个文件中。我的 ng-view 组件没有显示任何内容。有我的index.html
<!DOCTYPE html>
<html lang="en" ng-app="app">
<head>
<link href="css/style.css" type="text/css" rel="stylesheet" />
<script src="js/lib/angular.min.js"></script>
<script src="js/lib/angular-route.min.js"></script>
<script src="js/main.js"></script>
</head>
<body>
<ul>
<li>
<a href="#/">Home</a>
</li>
<li>
<a href="#/gallery">Gallery</a>
</li>
<li>
<a href="#/contribute">Contribute Photo</a>
</li>
</ul>
<div ng-view></div>
</body>
</html>
我的 main.js 文件
const app = angular.module('app', ['ngRoute'])
.config(function ($routeProvider) {
$routeProvider
.when('/', {
templateUrl: '/pages/home.html',
controller: 'homeController'
})
.when('/gallery', {
templateUrl: '/pages/gallery.html',
controller: 'galleryController'
})
.when('/contribute', {
templateUrl: '/pages/contribute.html',
controller: 'galleryController'
});
})
.controller('homeController', function($scope) {
})
.controller('galleryController', function ($scope) {
});
我尝试使用来自网站和本地的 js 库,但没有帮助。与互联网上的示例进行比较,但我发现的所有内容都与我的相似。在我的模板文件中,我只是放了一些 h1 标头。There is my project directory
【问题讨论】:
-
从网址中移除#标签
-
没有帮助。没有区别
-
尝试从 templateUrl 值中删除前导斜杠。意思是,试试 templateUrl:'pages/contribute.html' - 检查这是否有帮助
-
@VladislavRusak 解释更多发生了什么,“它没有显示任何东西”太模糊了。您在控制台中有任何错误吗?它会将您重定向到任何地方,例如 404 页面吗?等
-
是的,删除斜线对我有帮助,非常感谢!我犯了这么愚蠢的错误)