AngularJS $ routeProvider不会在ng-view中显示模板

时间:2016-04-28 02:55:09

标签: javascript angularjs

因此,当我点击index.html中的链接时,浏览器中的路径会发生变化,但它不会显示sivu1.html和sivu2.html的内容

这是我的index.html

<html ng-app="appi">
    <head>
        <title>TODO supply a title</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.5/angular-route.min.js"></script>
        <script src="appi.js"></script>
    </head>
    <body>
        <a href="/sivu1">Sivu ykköne</a>
        <a href="/sivu2">Sivu kakkone</a>
        <div ng-view></div>
    </body>
</html>

这是appi.js

var appi = angular.module("appi", ["ngRoute"]);

appi.config(["$routeProvider", "$locationProvider", 
    function($routeProvider, $locationProvider){
        $routeProvider.when
        ("/sivu1", {templateUrl: "templates/sivu1.html", controller: "sivu1controller"});

        $routeProvider.when
        ("/sivu2", {templateUrl: "templates/sivu2.html", controller: "sivu2controller"});

        $routeProvider.otherwise({redirectTo: "/home"});

        $locationProvider.html5Mode({enabled:true, requireBase:false});
    }]);

appi.controller("sivu1controller",["$scope", function($scope){
    $scope.viesti = "Tässä sivu ykkönen(1)";    
}]);

appi.controller("sivu2controller",["$scope", function($scope){
    $scope.viesti = "Tässä sivu kakkonen(2)";    
}]);

sivu1.html和sivu2.html都具有相同的内容

<h2>{{ viesti }}</h2>

文件夹结构

enter image description here

1 个答案:

答案 0 :(得分:0)

更改你的href

<a href="/sivu1">Sivu ykköne</a> \<a href="/sivu2">Sivu kakkone</a>

<a href="#/sivu1">Sivu ykköne</a>
<a href="#/sivu2">Sivu kakkone</a>

现在应该可以了。