検索

ホームページ  >  に質問  >  本文

angular.js - # を含むルート、angularjs、vuejs のみがパスを識別できますか?

Angular で

これが私のルートです:

リーリー

これは私の html コードです:

リーリー

href 属性が # 番号で始まる場合、この # 番号が含まれる場合、ルーティングは正常に機能します。 # 番号を削除すると、ルートはパス

を見つけられなくなります。 リーリー

vuejs でも同じことが起こります

vuejsvue-router を使用する場合、これが私のルートです:

リーリー

こちらは html:

リーリー

同様に、# 番号を使用したルーティングは正常に機能します:

を削除します。 リーリー

なぜこのようなことが起こっているのでしょうか?この # 数値は具体的に何をするのでしょうか?
は認識できるのに、http://localhost:8000/phones/motorola-xoom は認識できないのはなぜですか? http://localhost:8000/app/index.html#/phones/motorola-xoom

我想大声告诉你我想大声告诉你2858日前640

全員に返信(6)返信します

  • ringa_lee

    ringa_lee2017-05-15 17:01:24

    Web アプリは、URL を通じてさまざまな状態を識別する必要があります。さまざまな状態はさまざまな URL に対応するため、前後に移動したり、ブックマークを保存したりするのに便利です。
    ただし、Web アプリでのユーザー エクスペリエンスを確保するために、ページ ステータスの遷移は通常、ページを更新しません。これは、多くの場合、ajax を通じて実現されます。
    従来の ajax はアドレス バーには影響しません (リクエストは新しい URL をリクエストするのではなく、XHR オブジェクトを通じて完了します)。そのため、URL をさまざまなページの状態に対応させたい場合はどうすればよいでしょうか? windows.location などのメソッドはページ全体を更新します。 windows.location之类的方法是会刷新整个页面的。
    这就需要用到传统的#了。锚点这东西本来是让你在当前页面的不同部分移动的,支持前进后退和保存书签,于是就被拿来应用在Web App的路由中。这样www.example.com/index.html#phones 和www.example.com/index.html#users 就能表示两个状态,而且转换不会刷新页面。
    新的History API可以把#これには従来の # を使用する必要があります。アンカー ポイントは元々、現在のページの異なる部分間を移動することを可能にし、前後に移動したり、ブックマークを保存したりできるため、Web アプリのルーティングに使用されました。このように、www.example.com/index.html#phones と www.example.com/index.html#users は 2 つの状態を表すことができ、遷移によってページは更新されません。

    新しい History API は # を削除できますが、サーバーはフォールバック バージョンを提供する必要があるため、ここでは詳しく説明しません。 🎜

    返事
    0
  • 巴扎黑

    巴扎黑2017-05-15 17:01:24

    1. まず、フロントエンドルーティングの基礎知識、onHashChangeやpushStateなどの最も基本的なことを学び、さらに小規模なルートを自分で書いてから使用してください。

    2. たとえ習っていなくても、公式ドキュメントを注意深く完全に読んでください。公式の例は非常に明確です。

    返事
    0
  • 高洛峰

    高洛峰2017-05-15 17:01:24

    リーリー

    Vueはルーティングモードをhtml5モードに設定することは公式ドキュメントには記載されていますが、書き方は書かれていません

    返事
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-15 17:01:24

    ハッシュを気にする必要がないように、HTMLでv-link="{path : '/phones'}"を使用することをお勧めします

    返事
    0
  • 巴扎黑

    巴扎黑2017-05-15 17:01:24

    これは、フロントエンドがルーティングを実装する方法です。#バックエンドは、実際にはアンカーポイントに似ており、プッシュステートと同様に、パスと呼ばれます。同様に、より良い体験をするためのものなので、先に進んでも構いません。

    返事
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-15 17:01:24

    Baidu でアンカー リンクをダウンロードして、angularjs と vuejs のドキュメントを読んでください

    返事
    0
  • キャンセル返事