Работа над добавлением перетаскивании функциональности углового-деревом управление: https://github.com/wix/angular-tree-controlСпособ привязки данных от родительской области к элементу в узле в управлении угловым деревом?
Я пытаюсь связать данные из родительской области к элементу я сделал в шаблоне для каждого узла. Однако изолированная область узла затрудняет передачу этой информации. Я добавил атрибут через выделенное определение области (scope: {files: "="}) и установил файлы в свой html. Тем не менее, когда я использовал ng-model = "файлы", данные не меняются или изменение не достигает основной области.
Не может быть, что я не могу просмотреть изменения. Предполагается, что триггер часов из другого углового приложения (ng-file-upload) выключается и вызывает функцию загрузки файла, когда я изменяю основные (не изолированные) данные области видимости с клиента, и этого не происходит. Если данные правильно привязаны из родительской области, функция часов должна запускаться, потому что свойство родительской области видимости должно измениться при изменении свойства локальной области. Я могу добавить дополнительные объяснения или разъяснения, если этого недостаточно.
Вот мой HTML код:
<div treecontrol class="tree-classic"
tree-model="dataForTheTree"
files="files"
options="treeOptions"
on-selection="showSelected(node)"
selected-node="node1">
<span ngf-drop ngf-select ng-model="files" ngf-drag-over-class="dragover" ngf-multiple="true" ngf-allow-dir="true">
{{node.ObjectName}} {{node.FileSize}} {{files}} </span>
</div>
Вот мой Javascript:
$scope.getserver = function() {
// Simple POST request example (passing data) :
$http.post('/api/tree/download', { "Url": "" }).
success(function (data, status, headers, config) {
// this callback will be called asynchronously
// when the response is available
$scope.dataForTheTree = JSON.parse(JSON.stringify(data));
$scope.log += JSON.stringify(data);
}).
error(function (data, status, headers, config) {
$scope.log += "error getting file structure";
// called asynchronously if an error occurs
// or server returns response with an error status.
});
}
$scope.$watch('files', function() {
$scope.upload($scope.files);
});
$scope.upload = function (files) {
// upload code goes here
}
Вот мои правки в угловой-древовидных control.js:
scope: {
treeModel: "=",
selectedNode: "=?",
selectedNodes: "=?",
expandedNodes: "=?",
onSelection: "&",
onNodeToggle: "&",
options: "=?",
orderBy: "@",
reverseOrder: "@",
filterExpression: "=?",
filterComparator: "=?",
done: "&",
//this is my edit
files: "="
}
'scope. $ Apply (function() {scope.datafile = 'xxx'})'; – user4898717
Благодарим за отзыв. Было бы здорово, если бы вы могли сказать мне, где это вписывается в мой проект, а также почему. Отредактировал мой вопрос. –