Angular 2:ブラウザでURLが変更されましたが、ビューが表示されません

timmz

ルートに移動しようとすると問題が発生する単純なアプリがあります。私の主なコンポーネント:

    @Component({
    selector: 'my-app',
    template: `
    <ul class="my-app">
        <li>
            <a [routerLink]="['Login']">Login</a>    
        </li>
        <li>
            <a [routerLink]="['Projects']">Projects</a>  
        </li>
    </ul> 
     <br>
    <router-outlet></router-outlet>`,
    directives: [ROUTER_DIRECTIVES],
    providers: [ROUTER_PROVIDERS]
})
@RouteConfig([
    {
        path: '/Login',
        name: 'Login',
        component: LoginFormComponent,
        useAsDefault: false
    },
    {
        path: '/Projects',
        name: 'Projects',
        component: ListProjectsComponent,
        useAsDefault: true
    }
 ])

    export class AppComponent { ...
    ...

そして私は基本的なコンポーネントを持っています

@Component({
    selector: 'login-form',
    template: 
      `
        <button (click)="goToProjects()">Go To Projects!</button>
      `,
    directives: [ROUTER_DIRECTIVES],
    providers: [LoginService, ROUTER_PROVIDERS]
})

export class LoginFormComponent implements OnInit {
...
 goToProjects(){
         let link = ['Projects',{}];
         this.router.navigate(link);
    }
..
}

ベースHrefをメインページ「index.html」に追加しました

<head>
    <base href="/">
  </head>

ボタンをクリックすると、アドレスバーのURLが変わりますが、ビューが表示されません。何が問題になる可能性がありますか?

timmz

私は「偶然に」別の質問のためにこの答え見つけました

bootstrap(
    TestComponent, 
    [
        ROUTER_PROVIDERS, 
        // must be listed after `ROUTER_PROVIDERS`
        provide(LocationStrategy, { useClass: HashLocationStrategy }) // not  interested in this just in the original answer 
    ]
);

providers: [ROUTER_PROVIDERS] // <-- ** delete this line this is what worked!**
from LoginComponent

したがって、Bootstrapクラスがすでに「ROUTER_PROVIDERS」を宣言している場合は、すべてのコンポーネントからそれらを削除する必要があります。ナビゲーション、ハッシュバン(元の回答のように)など、一部の操作はサイレントに失敗します。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Angular-URLは変更されましたが、ビューが読み込まれていません

分類Dev

Angular JS-ビューはhtml5Mode(true)で変更されませんでしたが、URLは変更されました

分類Dev

Angular UI-ルーター:URLは変更されましたが、ビューが読み込まれません

分類Dev

Angular2 css:ホストを適用していますが、ブラウザには表示されません

分類Dev

Angular2が請願書を取得した後、ビューが正しく表示されません

分類Dev

Angular uiグリッドは、ブラウザウィンドウのサイズが変更されない限りコンテンツを表示しません

分類Dev

Angular2:変数が変更されてもビューは更新されません

分類Dev

Angular 2 CLIはコンパイル中ですが、ブラウザーはWebStormで行われた変更を反映していません

分類Dev

ラジオボタンの「選択された」値はモデルでは変更されましたが、Angular5のビューでは変更されていません

分類Dev

AngularアプリをHerokuにデプロイすると、ビルドは成功しましたが、ブラウザーで404が見つかりませんと表示されます

分類Dev

Angular 2ビューは、サブスクライブで変数を変更すると更新されません

分類Dev

Angular 2ビューは、サブスクライブで変数を変更すると更新されません

分類Dev

Angular:css変数を使用したフォントサイズの変更は適用されますが、特定のフィールドのブラウザーには反映されません

分類Dev

Angular 2ネストルーティング:ビューまたはURLが更新されていません

分類Dev

Angular2-ビュー内の変数が更新されていません

分類Dev

(Angularなどの)SPAで事前署名されたURLを使用すると、ブラウザーのキャッシュが爆発します

分類Dev

Angular - ビューが変更される前に alert() が実行されます

分類Dev

Angular2Observableはデータが変更されるまでレンダリングされません

分類Dev

Angular.js6.1.0-変数がビューに渡されていません

分類Dev

Angular 4:モデルの変更後にビューが更新されませんか?

分類Dev

ビューがAngularに注入されていません

分類Dev

Angular-データは返されましたが、ng-repeatで表示されません

分類Dev

Angular cliをインストールしましたが、その表示がcmdで認識されません

分類Dev

ng-ifをAngularで使用すると、ビューが更新されません

分類Dev

$ translateを使用して言語の変更を呼び出すと、「壊れたインターセプターが検出されました:構成オブジェクトが拒否されませんでした」:angular-loading-bar

分類Dev

コンポーネント変数の変更は、Angular2でマウスオーバーするまでビューで更新されません

分類Dev

Angular 2- * ngFor with keysパイプは、オブジェクトが変更されても更新されません

分類Dev

Angularの変更検出のブレークポイントがcheckAndUpdateView()でトリガーされません

分類Dev

Angular7ウィンドウのサイズ変更イベントがサービスで実行されていません

Related 関連記事

  1. 1

    Angular-URLは変更されましたが、ビューが読み込まれていません

  2. 2

    Angular JS-ビューはhtml5Mode(true)で変更されませんでしたが、URLは変更されました

  3. 3

    Angular UI-ルーター:URLは変更されましたが、ビューが読み込まれません

  4. 4

    Angular2 css:ホストを適用していますが、ブラウザには表示されません

  5. 5

    Angular2が請願書を取得した後、ビューが正しく表示されません

  6. 6

    Angular uiグリッドは、ブラウザウィンドウのサイズが変更されない限りコンテンツを表示しません

  7. 7

    Angular2:変数が変更されてもビューは更新されません

  8. 8

    Angular 2 CLIはコンパイル中ですが、ブラウザーはWebStormで行われた変更を反映していません

  9. 9

    ラジオボタンの「選択された」値はモデルでは変更されましたが、Angular5のビューでは変更されていません

  10. 10

    AngularアプリをHerokuにデプロイすると、ビルドは成功しましたが、ブラウザーで404が見つかりませんと表示されます

  11. 11

    Angular 2ビューは、サブスクライブで変数を変更すると更新されません

  12. 12

    Angular 2ビューは、サブスクライブで変数を変更すると更新されません

  13. 13

    Angular:css変数を使用したフォントサイズの変更は適用されますが、特定のフィールドのブラウザーには反映されません

  14. 14

    Angular 2ネストルーティング:ビューまたはURLが更新されていません

  15. 15

    Angular2-ビュー内の変数が更新されていません

  16. 16

    (Angularなどの)SPAで事前署名されたURLを使用すると、ブラウザーのキャッシュが爆発します

  17. 17

    Angular - ビューが変更される前に alert() が実行されます

  18. 18

    Angular2Observableはデータが変更されるまでレンダリングされません

  19. 19

    Angular.js6.1.0-変数がビューに渡されていません

  20. 20

    Angular 4:モデルの変更後にビューが更新されませんか?

  21. 21

    ビューがAngularに注入されていません

  22. 22

    Angular-データは返されましたが、ng-repeatで表示されません

  23. 23

    Angular cliをインストールしましたが、その表示がcmdで認識されません

  24. 24

    ng-ifをAngularで使用すると、ビューが更新されません

  25. 25

    $ translateを使用して言語の変更を呼び出すと、「壊れたインターセプターが検出されました:構成オブジェクトが拒否されませんでした」:angular-loading-bar

  26. 26

    コンポーネント変数の変更は、Angular2でマウスオーバーするまでビューで更新されません

  27. 27

    Angular 2- * ngFor with keysパイプは、オブジェクトが変更されても更新されません

  28. 28

    Angularの変更検出のブレークポイントがcheckAndUpdateView()でトリガーされません

  29. 29

    Angular7ウィンドウのサイズ変更イベントがサービスで実行されていません

ホットタグ

アーカイブ