loadChildren("123#childModule")
からappModule
までモジュールをロードしており、ブラウザに常に/#/
が追加されています。角2 - URLからハッシュ(#)を削除
私はuseHash : false
とProviders
をPathLocationStrategy
として試しましたが、まだ問題があります。
これについての調査を行っていましたが、これまでのところ解決策が見つかりませんでした。何か案が?前もって感謝します。
loadChildren("123#childModule")
からappModule
までモジュールをロードしており、ブラウザに常に/#/
が追加されています。角2 - URLからハッシュ(#)を削除
私はuseHash : false
とProviders
をPathLocationStrategy
として試しましたが、まだ問題があります。
これについての調査を行っていましたが、これまでのところ解決策が見つかりませんでした。何か案が?前もって感謝します。
を試してみてくださいあなたはこれを試すことがあります。
あなたはアンギュラ最終を使用している場合は、ハッシュに理由が考えられます。
RouterModule.forRoot(yourRoutesHere, { useHash: true })
またはこの使用:モジュールのほかに
をプロバイダが、あなたのモジュールのインポートをチェックするならば、{useHash:true}をRouterModule.forRootの第2引数として提供することでオーバーライドすることもできます:
imports: [
...
RouterModule.forRoot(routes, { useHash: true }) // remove second argument
]
まず第一に、私はあなたがルートコードは次のようにあるべきモジュール で遅延読み込みしようとしていたと信じて:
{ path: 'mgt', loadChildren: 'app/your-mgt/your-mgt.module#YourModule'}
そして、あなたのURLの#ショーはここで、「#」とは何の関係もありません。デフォルトで
は、角度はすでに
RouterModule.forRoot(routes)
私はこれがあなたのものだと思いPathLocationStrategyを使用:
RouterModule.forRoot(routes, { useHash: true } or RouterModule.forRoot(routes, { useHash: false }
なく、あなたのバックエンドがあるいただきましたことを確認、しかし、あなたは1を持っており、それがデータをフェッチするために、AJAXを使用する場合。 バックエンドでExpressを使用している場合。 this
こんにちはリー、ご回答いただきありがとうございます。私たちはサービス呼び出しのない静的なページ自体をロードするだけでURLに/#/を見ています。ハッシュを使用しようとしました:偽ですが運がまだありません。 URLに#を正確に追加しているかどうかはわかりません。私は角度2にかなり新しいです、助けてください。 –
@ RajuChあなたのapp.module.tsファイルを教えてもらえますか? –
どこが間違っているのか分かりました。私たちが作ったカスタムライブラリは、Hashlocation戦略を使っています。あなたのサポートと助けてくれてありがとう。 –
構文はここに – Fabien
追加あなたのapp.routing.tsモジュールの内容を強化 – MondKin
https://stackoverflow.com/a/46315140/2978923 – Deshak9