2017-01-21 4 views
0

Моего простой маршрутизатор не кажется, работает, вот мой app.jsUi-маршрутизатор не работает?

var module = angular.module('ngFirstApp',['ui.router']); 

module.config(function($stateProvider, $urlRouterProvider) { 
     $stateProvider.state("home",{ 
      url: "/home", 
      template: "This is home" 
     }); 
}); 

module.controller('ngController',function($scope){ 
     $scope.greeting = 'hello world'; 
}); 

и мой HTML это

<!DOCTYPE html> 
<html ng-app="ngFirstApp"> 
<head> 
    <meta charset="utf-8"> 
    <title>My first app in Angular js</title> 

    <link rel="stylesheet" href="js/libs/bootstrap-css-only/bootstrap.min.css"> 
    <link rel="stylesheet" href="js/libs/bootstrap-css-only/bootstrap-theme.min.css"> 
</head> 
<body ng-controller="ngController"> 
    <div> 
     <h1>{{ greeting }}</h1> 
     What the heck is goin on here!! 
     <div ui-view></div> 
    </div> 
    <!-- This is angularjs itself --> 
    <script type="text/javascript" src="js/libs/angular/angular.js"></script> 

    <!-- These came from cdnjs angular-ui-bootstrap --> 

    <script type="text/javascript" src="js/libs/angular-bootstrap/ui-bootstrap.min.js"></script> 
    <script src="js/libs/angular-bootstrap/ui-bootstrap-tpls.min.js"></script> 

    <!-- Ui router --> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.4.0/angular-ui-router.min.js"></script> 
    <!-- These are custom files --> 
    <script type="text/javascript" src="app.js"></script> 

</body> 
</html> 

, когда я иду на локальный хост: 3000/домой, говоря, не может попасть домой ? что случилось с моим кодом .. пожалуйста noob angularjs

+0

попробовать этот Localhost: 3000/#/ДОМАШНЯЯ –

+0

Спасибо Я на самом деле пытался положить '$ urlRouterProvider.otherwise («/ дом»), 'теперь, кажется, добавляя' # !/home' и, кажется, все в порядке, но я знаю о html5mode (true), это исправить это ..? спасибо за помощь ур снова – Chopnut

ответ

0

Я нашел решение, поскольку мы изучаем угловые.

При использовании маршрута, и вы ввели в URL, что у вас нету установленную на как состояние

localhost:2311/words-not-set-in-your-state-declaration

вам нужно поставить urlRouterProvider.otherwise('/your-default-state');

и поэтому вы не получите #!/state-here , вы должны повернуть html5mode на точно так, как это:

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

NO T$locationProvider.html5Mode(true); иначе консоль браузер будет жаловаться :)

Смежные вопросы