0
を角度-UI-ルータを実装します。は 'そうでない' 状態
しかし、彼らがmyURL/fooと入力すると、404になります。これはひどいです。代わりに/にリダイレクトする必要があります。
私はこれを実装しようとしていますが、多くの運がないわけではありません。
(function() {
'use strict';
angular
.module('myApp')
.config(['$stateProvider', '$urlRouterProvider', function($stateProvider, $urlRouterProvider) {
$stateProvider
.state('index', {
name: 'index',
url: '/',
templateUrl: 'js/views/page1.html',
controllerAs: 'page1Controller',
data: { pageTitle: 'Main' }
})
.state('page2', {
name:'page2',
url: '/page2/:id',
templateUrl: 'js/views/page2.html',
controllerAs: 'page2Controller',
data: { pageTitle: 'page2' }
})
$urlRouterProvider.otherwise('/');
}]);
})();
私は記事の数十を見てきました、そしてどこにも私はこの単純な場合に処理を見つけることができるように思わないでください。
私はウェブサイトの標準的な動作をしないようにしようとしていますか?ユーザーが悪いURLを入力するたびに、彼らはホームページに戻ってしまいます。 – DaveC426913
デフォルトでは、AngularJSはURLをハッシュタグでルーティングします。ハッシュタグの後ろにないものは、デフォルトのangular 1 $ locationProviderの有効なルートではありません。この問題は、$ locationProviderを修正して#を削除することで解決できますが、これはAngular 2で削除されました。これが役立つことを願っています。 – flashjpr