В то время как я искал проблему, с которой я сталкивался с ng-повторами в директиве ui-sortable, которую я позже нашел, была той же проблемой, что и эта (https://github.com/angular-ui/ui-sortable/issues/2), я столкнулся с другой проблемой, касающейся области ui-sortable директивы.AngularJS/UI ui-sortable не имеет изолированного пространства?
Если вы посмотрите на эту скрипку: http://jsfiddle.net/hKYWr/707/
Пожалуйста, откройте консоль, и вы заметите, что при запуске и остановить перетаскивание, вы увидите «старт» и «стоп» в консоли ,
Однако, когда вы вводите второй ui-сортируемый раздел с различными параметрами, он переопределяет события первого (или наоборот). Вы заметите, что «не перестанет» больше не вызывается первым набором цветов: http://jsfiddle.net/hKYWr/708/
Хотя пошаговый угловой ui.js файла, эти строки, которые вызывают проблемы:
// If user provided 'start' callback compose it with onStart function
_start = opts.start;
opts.start = function(e, ui) {
onStart(e, ui);
if (typeof _start === "function")
_start(e, ui);
};
// If user provided 'start' callback compose it with onStart function
_stop = opts.stop;
opts.stop = function(e, ui) {
onStop(e, ui);
if (typeof _stop === "function")
_stop(e, ui);
};
// If user provided 'update' callback compose it with onUpdate function
_update = opts.update;
opts.update = function(e, ui) {
onUpdate(e, ui);
if (typeof _update === "function")
_update(e, ui);
};
_stop, похоже, перезаписывается с помощью «undefined» из того, что ui-sortable получает последним.
Кто-нибудь, как обрабатывать несколько ui-сортируемых элементов на одной странице? Пожалуйста, дайте мне знать, если я делаю что-то неправильно, спасибо заранее!