1

ビューに表示する連絡先グループのリストがあります。連絡先グループをクリックすると、現在のハッシュを変更して、関連付けられている連絡先を読み込みたいです。

たとえば、連絡先グループが 3 つあるとします。

すべて (ID なし)

友達 (ID := 1)

家族 (ID := 2)

その他 (ID := 3)

[友達] をクリックすると、URL を #/people/1 に変更する必要があり、パラメーター (Id = 1) を使用してコールバックを呼び出す必要があります。[すべて] をクリックした場合、すべての連絡先を読み込むために ID を渡す必要はありません (#/人)。

何かのようなもの:

router.when("#/people/:id", function (routeData) {
    console.log(routeData.Id); //Output: 1

    // Load contacts by id
});

router.when("#/people", function () {
    // Load all contacts
});

function onContactGroupClick(contactGroup) {
    router.navigateToWithoutReset("#/people/" + contactGroup.Id);
}

その理由は、呼び出しがコードまたは手動のどちらで行われるか (Url を変更するか、ハイパーリンクをクリックする) が問題にならない中央の場所が必要だからです。

良い例は Gmail/連絡先です

DurandalJS の router.navigateTo を使用すると、ビュー モデル全体がリロードされます。ビューモデルを更新せずにDurandalJSでこれを行う方法はありますか?

4

1 に答える 1