問題タブ [canjs-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 に答える
623 参照

javascript - CanJS で can.Control.route を使用して 2 つの別個のルーターを定義する

両方とも同じ HTML ファイルに含まれていますが、異なる JS ドキュメントで定義された 2 つのルートがあります。ルート 1 は次のようになります。

もう 1 つは次のようになります。

#!receipts/1 を参照すると、領収書と請求書の両方がインスタンス化されています。それはなぜですか、どうすれば修正できますか?

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

routes - can jsで404を処理するキャッチオールルートを定義するには?

すべての正しいルートが最初にチェックされるように、can.js で 404 を処理するためのキャッチオールルートを定義する適切な方法は何ですか? 一致しない場合、このルートはそれをキャッチし、404 メッセージを表示できます。

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

javascript - CanJSでルーターを実装するにはどうすればよいですか

https://github.com/thinkadoo/Projectsアプリケーションの助けを借りています。this one の助けを借りて、同様のアプリを作成しました。私のアプリケーションは、これが使用するチャートの代わりに d3 チャートを使用しています。私のアプリはルーターを次のように初期化します

ルーターを実装したい場合は、どのような変更を行う必要がありますか? これは、両方の実装を備えた私の JSFiddle です。最初のものは働いています。しかし、ルーターを初期化する後半部分は機能していないようです。 http://jsfiddle.net/sweety1112/YMAjm/

誰かが私を助けることができますか?

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

javascriptmvc - CanJS の URL が #! に戻りました can.route.ready(true) が実行されたとき

コードはhttp://jsfiddle.net/cTpPx/にありますが、ライブの例はhttp://fiddle.jshell.net/cTpPx/show/でご覧ください。これは、URL の変更を確認していただくためです。

このページにアクセスするときは、Chrome キャッシュを無効にしてください (組み込みの Chrome デバッガー ツールで関連するボックスにチェックを入れ、テスト中にデバッガーを選択しないでください)。

ページを開くと、hastag が#!latest期待どおりに変更されていることがわかりますが、実行されると空のルートcan.route.ready(true)に戻ります。#!なぜそのような奇妙な行動があるのですか?

ただし、このページのキャッシュがある場合は機能します。

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

javascript - Canjs: 現在のページのルート イベントをトリガーする

次のような can.Control があります。

現在のページが {page: "home", type: "test"} の場合、"route" コールバックは呼び出されません。

現在表示しているページに関係なく、ルート イベントをトリガーするにはどうすればよいですか?

私の考え...直接
呼び出すことはできますthis.route()が、URLの変更を処理する必要があるため、良い解決策ではありません.

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

javascript-framework - CanJS マルチページ アプリ

私が見たチュートリアルと例はすべて単一ページのアプリケーションです。

CanJS を使用して複数ページのアプリを開発する方法を示すリソースを紹介したり、アイデアを提供したりできる人はいますか?

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

javascript - Location.hash は空の文字列を返します

現在、Web アプリケーションに jQuery、Twitter Bootstrap、および CanJS を使用しています。CanJSでルーティングを実装しようとしています。Bootstrap のタブを使用しています。タブをクリックすると、#tabSearch、#tabUser、または #tabPermissions が表示されるはずでしたが、ハッシュが空の文字列で返されます。私は何を間違っていますか?

これを使用してタブを変更しています:

HTML部分は次のとおりです。

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

canjs - jsはルートマッチングを遅らせたり、手動でディスパッチをトリガーしたりできますか?

私は次のように設定されたコントロールを持っています:

  1. 非同期にロードされたビューをレンダリングします。
  2. ビューのデータも非同期でロードされます。
  3. ルート変更をリッスンします。ルート ハンドラーの 1 つは、手順 2 で読み込まれたモデルの詳細を含むモーダルを表示します。

問題は、ユーザーがモデルを指すルートを持つページに到達する可能性があることです。これは、コントロールが初期化された時点では使用できないため、明らかにモーダルがロードされません。

ビューがレンダリングされた後にディスチャーを再度トリガーするか、コントローラーをルートに移動させるにはどうすればよいですか?

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

javascript - can.routing : #!/foo/bar から #!/foo への変更のトリガー

CanJS のルーティングを理解しようとしています。これまでのところ、次のルートを設定しています。

コンソールでこれを試しているだけなので、まだリスナーを設定していません。以下はうまくいきます:

しかし、これを行った後、イベントをトリガーして、階層を「上」に移動し、#!/plant/1 レベルに戻りたいと考えています。やってみcan.route.attr({plant : 1, day : undefined})ましたが、何もしませんでした。can.route.attr({plant : 1, day : null})という結果になりました#!plant/1/day/null

では、ルートを「リセット」して、今日がどの日かを「知る」にはどうすればよいでしょうか。

0 投票する
3 に答える
132 参照

javascript - {can.route} を使用して空のルートをリッスンし、応答するにはどうすればよいですか?

ヒットした URL に応じて、対応するコントロールが設定されるように、CanJS でルーティングを設定したいと考えています。私の問題は、コントロールでリッスンするデフォルトルートを表現する方法を見つけようとしていることです:「一致するものがない場合は、これを実行してください」. これを行うためのヒントはありますか?

これはこれまでの私のコードです。/#!/plant/1/day/3andのような URLでは機能するようですが、 or/#!/plant/1では機能しないようです/#!/

PS私は実際にこれを行うことでCan.Control.routeプラグインを使用してそれを行うことができました:

しかし、ルート プラグインはルートの設定とルートへの反応の両方を行っているようで、特定のプラグインを使わずにこれを行う方法を知りたいと思っていました。