問題タブ [angular2-routing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
8 に答える
41657 参照

angular - Apache 404 で Angular2 ルーティング / ディープ リンクが機能しない

私はAngular 2ルーティングの例に従っています。「lite」Webサーバーを使用すると、ルートからナビゲートでき、ディープリンクが機能しますが、Apacheを使用するとルートからナビゲートできますが、ルートへの直接のリンクをたどると404 Not Foundエラーが発生します。

たとえば、次の URL は、npm によってポート 3000 で開始された「lite」Web サーバーに対して機能します。

しかし、ポート 80 で実行されている Apache に対する次の URL は失敗します。

同様の Angular 1 の問題に対して推奨される .htaccess ソリューションをいくつか試してみましたが、うまくいきませんでした。Apache で Angular 2 のルーティングとディープ リンクを使用したことがある場合は、どうやってそれを達成したか教えてください。

Boot.ts

0 投票する
1 に答える
434 参照

angular - 認証にルート コンポーネントを使用する前にベース コンポーネントを実行する

Angular 2 のルートに基づいて (TypeScript を使用して) さまざまなコンポーネントをロードする小さなサンプル アプリケーションがあります。

次に試したいのは、ルートに属する実際のコンポーネントが呼び出される前に認証チェックを行う方法です。

たとえば、ある種の基本クラスを簡単に作成し、そこからすべてのコンポーネント クラスを拡張することができます。しかし、すべてのコンポーネントが基本クラスのコンストラクターを呼び出すようにする必要があります。

しかし、おそらく同じ目標を達成するための「Angular 2」の方法がもっとあるでしょうか?

この件については、まだ多くの情報を見つけていません。AuthComponent他のコンポーネントがロードされる前にクラスをトリガーする方法はありますか?

0 投票する
1 に答える
6668 参照

angular - angular2でnullのプロパティ「navigate」を読み取れません

私はangular2アプリに取り組んでいます。私のアプリには、他のコンポーネントをロードしてルーティングを処理する appComponent があります。アプリ コンポーネントは nav コンポーネントも読み込みます。ここに私のapp.htmlがあります

ここに私のappComponent.tsがあります

ここに私のnav.htmlがあります

ここに私のnavcomponent.tsがあります

nav コンポーネントには、ユーザーをホームページにリダイレクトするログアウト機能があります。しかし、ログアウトページをクリックすると、

ここに画像の説明を入力

なぜスローエラーになるのか理解できません。

0 投票する
2 に答える
20356 参照

angular - Uncaught ReferenceError: require が angular2 で定義されていません

<script src="node_modules/angular2/upgrade.js"></script>コードなしで正常に動作します。upgrade.js.it を含めると、「Uncaught ReferenceError: require is not defined in angular2」と表示されます。このエラーを克服するにはどうすればよいですか。

0 投票する
1 に答える
4537 参照

angular - Angular2 - ルートをトリガーせずに場所を変更する

サービスを使用してアイテムのリストをロードするビューがあります。<< >> ボタンで項目間を移動しながら、常に 1 つの項目のみを表示しています。

Angular のルーティング システムをトリガーせずに、ブラウザーのアドレス バーのアドレスを変更し、ブラウザーの履歴にレコードを追加する方法はありますか?

私が使用する場合、私はそれを知っています:

上記のことを行いますが、Angular のルート システムもトリガーし、サービスを再度呼び出します。

編集:

それは場所の機能のようです

私がやりたいことに近づいています-Angularの内部をトリガーせずにブラウザーでURLを変更しますが、残念ながら、新しい場所を一番上にプッシュするのではなく、履歴の最新の場所を置き換えます。