問題タブ [angularjs-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 投票する
1 に答える
3361 参照

events - AngularJS:約束が完了した後にイベントのDefault()を防ぐ方法は?

次のようなコードがあります。

このように解決しようとするとpromises

event(非同期実行のため)成功し、しばらくすると解決されなくeventなりました。promises

eventmyとリンクする方法はありpromisesますか?関数が終了した後ではなく、約束が解決された直後に防止されますか?

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

javascript - AngularJS ディレクティブが属性の変更に反応しない

ページにチャットルームを配置するために使用するチャット ディレクティブがあります。

HTML は次のようになります。

これは「標準」というファイルにあります

angularjs-ui-router を使用して、そのビュー内でチャットを提供するチャット ディレクティブを使用して親ビューを作成しています。これは、最初のページの読み込み時に正常に機能し、チャットが読み込まれます。しかし、ページ/チャット ルームを変更すると、別のコントローラーを使用してsetCurrentChatID(). これによりcurrentChatID、DOM のチャット要素が変更されます。チャット要素のプロパティが angularjs-batarang の新しい ID に変更されることもわかりますが、チャット ディレクティブのコントローラーは実行されません。これを適切に機能させるにはどうすればよいですか?chatID が変更されたときにチャットのコントローラーを有効にするにはどうすればよいですか?

ありがとう。

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

angularjs - angularjs ui-routerロケーションパスがフォワードスラッシュを認識しない

angular ui router / stateProviderを使用しています。ただし、2番目のスラッシュが無視された後、URLの任意の部分を設定し、常にこの状態に送信します。

スラッシュが 1 つしかありません。以下の状態に行ってもlocalhost/contacts/asdf動かない。

$stateProvider.state('test', { url: "/contacts/asdf", views: { 'main': { templateUrl: '/tmpl/contacts/asdf', controller: function () { console.log('thisここでは機能しません') } } });

コンソールSS これは $location のコンソール ログです。ご覧のとおり、$location は URL の最後の部分のみをパスとして認識します。私が知る限り、それは間違っています。その直前の「連絡先」がありません。どの URL も、URL の部分が 1 つしかないものとして解釈され、board状態に送信されます。これを修正するにはどうすればよいですか。ありがとう。

編集:これはangular 1.1.5が原因であることがわかりました。1.1.4 に戻すと、これはありませんでした。

0 投票する
0 に答える
1689 参照

javascript - ブラウザの戻るボタンで前のページに戻る、OK - プレーンな JavaScript で戻る、OK ではない

私のウェブサイトには製品ページがあり、製品をクリックすると製品の詳細に移動します。

商品ページのリンクはこちらhttp://www.dummyurl.com/Index.html#/category/1/Foam?price=13.13-26.25&color=Green

商品詳細ページのリンクはhttp://www.dummyurl.com/Index.html#/products/2450-Kunda/5036702024506?price=13.13-26.25&color=Green

ブラウザの戻るボタンをクリックすると、リンクのある製品ページに拒否されます: http://www.dummyurl.com/Index.html#/category/1/Foam?price=13.13-26.25&color=緑

しかし、製品詳細ページにも html ボタンが必要です。ボタンの背後には、次のコードを含むプレーンな Javascript があります: $window.history.back();

戻るボタンをクリックすると、次の URL に拒否されます: http://www.dummyurl.com/Index.html これは、Web サイトを起動したときの開始 URL であり、元の URL ではありません。

AngularJS のルーティングにより、デフォルトの URL に送られているようです。

誰かがこれを修正するアイデアを持っていますか?

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

backbone.js - angularjsのdivにテンプレートを追加するにはどうすればよいですか

angular js で実装しようとするバックボーンのいくつかの概念に行き詰まっています。backbonejs では、特定の div タグにテンプレート (html ページ) を追加し、その div 自体をレンダリングできます。angularjsで同じことをすることは可能ですか? テンプレートを div に追加してレンダリングしますか? </p>

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

angularjs - ページのリロード時の問題

私の問題は単純です。私は自分のアプリのページにいます。ブラウザでリロード/更新ボタンを押すと、同じページをロードする代わりに/homeにフォールバックします。奇妙なことは、最初の瞬間に試行することですページをリロードしますが、何かが発生し (コンソール エラーは発生しません)、/home にフォールバックします。

明確にするために、このサイトマップを取得したとしましょう

/home、/title、/title/info の 3 つのページがあります。

したがって、/title/info (localhost:3000/#/title/info=123) にいて、リロード/更新ボタンを押すと、/title/info を表示する代わりに、/home (localhost:3000/#/) にフォールバックします。家)

AngularJS の安定版を使用しています。

だから、誰でも私がこれを修正するのを手伝うことができます。

前もって感謝します。

**編集**これは、問題がないかどうかを確認するためのapp.jsファイルへのリンクです。

http://pastebin.com/0AAuASyZ

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

arrays - ng-repeat のソート順を変更すると routeParams.id が変更されます

並べ替え順序を変更しない場合、routeParams.id を使用して scope.data オブジェクトから正しいオブジェクトを取得するのは魅力的です。順序が変更されるとすぐに、routeParams.id が変更され、$scope.data 内のオブジェクトの順序と一致しなくなります。

したがって、ID 0 の「Agera」をクリックすると、/#/0 が開き、バインドは $scope.cars[0] に対応し、Agera のデータが表示されます。ただし、並べ替え順序が「make」に変更され、Bugatti が最初に配置された場合、「Veyron」リンクをクリックすると 0 の ID が再び渡されますが、データ オブジェクトが変更されていないため、0 は引き続き「アゲラ」

理想的には、URL がより明確になるように、独自の $routeParams を使用したいと思います。

しかし今では、どの car オブジェクトを使用するかをデータ配列に伝える方法がありません。では、$routeParams を使用して、配列の順序 ID を使用せずに、cars 配列内の正しい "car" オブジェクトに接続するにはどうすればよいでしょうか?

または、ID をオブジェクトに固定して、並べ替え順序に関連付けられないようにするにはどうすればよいですか?

== 編集 ==

オブジェクト内の各項目を明示的に呼び出すようにスコープを変更しました。

それでうまくいきます。大きなオブジェクトの場合でも、ひどく効率が悪いようです。さらに、そのデータが URL に含まれていないと機能しません。より良い方法はありますか?