2016-12-17 8 views
1

私はMEAN Machineという本に従っています。この本の中のコードはthis Github Repoにあります。角度1.3.8のルーティングがエラーなしで動作しない

/public/views/index.htmlのリンクをクリックすると、Webブラウザにファイルが見つかりませんというエラーが表示されます。

動作するようには思えないコード(/public/js/app.routes.js):

// inject ngRoute for all our routing needs 
angular.module('routerRoutes', ['ngRoute']) 

// configure our routes 
.config(function($routeProvider, $locationProvider) { 
    $routeProvider 

    // route for the home page 
    .when('/', { 
     templateUrl : 'views/pages/home.html', 
     controller : 'homeController', 
     controllerAs: 'home' 
    }) 

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

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

    $locationProvider.html5Mode(true); 
}); 

index.htmlファイルでは、我々は正しいファイルを指している:自分のコードをテストするには

<script src="js/app.routes.js"></script> 
<script src="js/app.js"></script> 

、私はindex.htmlのベースタグを上記のファイルが見つからないというエラーを排除したフォルダのパスに変更しました。

この資料は日付が入りましたか?また、この本はAngular 2を使用していないことに気づいています。Angular 2はルーティングで大幅に変化しますが、この資料は推奨されていませんか?

+0

angular2はangular1と非常に非常に異なります。 – charlietfl

+0

ブラウザで 'file/open'を使うのではなく、ローカルホストや他のサーバーでこれを実行していますか? – charlietfl

+0

@charlietfl実際、私はブラウザでファイル/オープンしています。私が持っている本は、バックエンドサーバー以外の何かを_run_する必要はありません。 – Biiiiiird

答えて

0

は単に'12 -angularルーティング」ディレクトリからのコマンドに

node server.js 

を実行し、ブラウザで開いてhttp://localhost:8080

問題は、デフォルトでブラウザがあなたのローカル上にあるファイルへのAJAX要求を許可していないということですファイルシステム。この場合、クライアントアプリケーションを提供するローカルサーバーを実行する必要があります(server.jsは簡易エクスプレスサーバーです)。

関連する問題