簡體   English   中英

Angularjs路線在這里不起作用

[英]Angularjs routes not working here

我已經用一切可能的方法來解決這個問題,但失敗了。 如果您有任何疑問可以了解此問題,請告知我們。 下面是我的代碼,檢查是否有語法錯誤。 我已經使用本地角度js文件進行路由並嘗試使用cdn。 但沒有任何影響。

的index.html

 <!-- define angular controller -->
 <body  ng-app="mydemo" ng-controller="mainController">
    <ul>
      <li><a href="#"> Home</a></li>
      <li><a href="#about"></i> About</a></li>
      <li><a href="#contact"></i> Contact</a></li>
    </ul>

  <div ng-view></div>

<script src="js/angular.js"></script>
<script src="js/angular-route.js"></script>
<script src="script.js"></script>

的script.js

我使用了1.5.7的angularjs版本

     var mydemo = angular.module('mydemo', ['ngRoute']);
      mydemo.config(function($routeProvider) {
        $routeProvider
        .when('/', {
            templateUrl : 'pages/home.html',
            controller  : 'mainController'
        })

        // route for the about page
        .when('/about', {
            templateUrl : 'pages/about.html',
            controller  : 'aboutController'
        })

        // route for the contact page
        .when('/contact', {
            templateUrl : 'pages/contact.html',
            controller  : 'contactController'
        });
});

mydemo.controller('mainController', function($scope) {
    $scope.message = 'Everyone come and see how good I look!';
});

mydemo.controller('aboutController', function($scope) {
    $scope.message = 'Look! I am an about page.';
});

mydemo.controller('contactController', function($scope) {
    $scope.message = 'Contact us! JK. This is just a demo.';
});

代替

<li><a href="#contact"></i> Contact</a></li>

怎么樣的嘗試

<li><a ng-href="#/contact"></i> Contact</a></li>

我認為路線必須完全匹配,其中包括/

試試這個script.js文件:

     angular.module('mydemo', ['ngRoute']).config(function($routeProvider) {
        $routeProvider.
        .when('/', {
            templateUrl : 'pages/home.html',
            controller  : 'mainController'
        })

        // route for the about page
        .when('/about', {
            templateUrl : 'pages/about.html',
            controller  : 'aboutController'
        })

        // route for the contact page
        .when('/contact', {
            templateUrl : 'pages/contact.html',
            controller  : 'contactController'
        });
});

mydemo.controller('mainController', function($scope) {
    $scope.message = 'Everyone come and see how good I look!';
});

mydemo.controller('aboutController', function($scope) {
    $scope.message = 'Look! I am an about page.';
});

mydemo.controller('contactController', function($scope) {
    $scope.message = 'Contact us! JK. This is just a demo.';
});

和index.html:

    <head>
    <script src="js/angular.js"></script>
    <script src="js/angular-route.js"></script>
    <script src="script.js"></script>
    </head>

     <!-- define angular controller -->
     <body  ng-app="mydemo" ng-controller="mainController">
        <ul>
          <li><a href="#"> Home</a></li>
          <li><a href="#about"></i> About</a></li>
          <li><a href="#contact"></i> Contact</a></li>
        </ul>

      <div ng-view></div>
</body>

檢查下面的修復:

$routeProvider // there are two dots in your code here, just remove one and it will fix the issue
.when('/', {
    templateUrl : 'pages/home.html',
    controller  : 'mainController'
})

您使用的角度版本很可能與角度路徑的版本不匹配。 確保版本兼容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM