私は、このJSONの構造を有する:Angularjsソート可能なアイテムとカテゴリは
{
"items":[
{
"category":"Category 1",
"name":"01",
"id":"46701a72410c"
},
{
"category":"Category 2",
"name":"02",
"id":"9a18ffe9f148"
},
{
"category":"Category 2",
"name":"03",
"id":"de3a49a458cc"
},
{
"category":"Category 3",
"name":"04",
"id":"bb06b1eec9c8"
},
{
"category":"Category 3",
"name":"05",
"id":"92973f4cfbfc"
},
{
"category":"Category 3",
"name":"06",
"id":"b06bbb86d278"
}
],
"categories":[
{
"isCollapsed":false,
"name":"Category 1"
},
{
"isCollapsed":false,
"name":"Category 2"
},
{
"isCollapsed":false,
"name":"Category 3"
}
]
}
を、私はui.sortable angularjsを使用してソート動作を追加しようとしています。カテゴリとアイテムの両方をソート可能にしたい。
このjsonに基づいて2つのネストされた順序付きリストを作成しましたが、ソート可能な設定を解決する方法はわかりません。このjson構造は可能ですか?
これらの設定では、仕事を分類するカテゴリだけを解決しました。問題は、アイテムが移動されたとき(間違った位置または未定義がとられたとき)です。
$scope.sortableOptionsCategories = {
stop: function(ev, ui) {
console.log("Category moved.");
}
};
$scope.sortableOptionsItems = {
connectWith: '.items-container',
start: function(e, ui) {
$(this).attr('data-previndex', ui.item.index());
console.log("Start: from position " + ui.item.index());
},
update: function(e, ui) {
var newIndex = ui.item.index();
var oldIndex = $(this).attr('data-previndex');
$(this).removeAttr('data-previndex');
console.log("Update: " + oldIndex + " -> " + newIndex);
},
stop: function(ev, ui) {
console.log("Item moved.");
}
};
UPDATE: ここに私のコードです:それは私のために完璧でしょうであるとしてJSONを保つ http://codepen.io/anon/pen/LpGmeY ソリューションは、しかし、可能でない場合、私は他のソリューションを受け入れます。
これをHTMLを含むコードペーンまたはPlunkrに投稿できますか? –
コードを使用して、任意のソート可能なコードサンプルを拡張して掲載することはできますか? –
自分のコードを更新しました。 – GhitaB