Двусторонняя привязка данных с ng-grid?

Как получить двустороннюю привязку данных с помощью ng-grid?

Я работаю с их примером разбивки на страницы и выяснил, как factory и broadcast Работа; и, таким образом, успешно загрузили новые версии моих данных в соответствующий контроллер.

Как включить двустороннюю привязку данных к переменной myData?

Я пробовал эти две разные вещи:

$scope.gridOptions.data = <injected object>;
$scope.myData = <injected object>;

В чем фокус для включения двусторонней привязки данных к объекту myData?


person Foo Stack    schedule 06.06.2013    source источник
comment
Когда вы говорите двухстороннее связывание данных. Что это значит. Насколько я понимаю, ng-grid не позволяет изменять данные из пользовательского интерфейса.   -  person Chandermani    schedule 06.06.2013
comment
Я хочу, чтобы данные, отображаемые в таблице ng-grid, изменялись при изменении содержимого переменных в моем контроллере, содержащем код ng-grid.   -  person Foo Stack    schedule 06.06.2013
comment
Двухсторонняя привязка данных подразумевает изменения пользовательского интерфейса, и изменения в модели синхронизируются. Вы все еще говорите об одностороннем связывании.   -  person Chandermani    schedule 06.06.2013


Ответы (1)


Он должен работать по умолчанию. Я взял пример плункера с сайта ng-grid, изменил его содержимое и обновил его автоматически.

См. Здесь http://plnkr.co/edit/8St4ya?p=preview.

См. Этот код

 $scope.changeData=function(){
      $scope.myData[0].name="NewName";
    };

Если ваша сетка не обновляется при изменении связанных данных, причина может быть в

  • Связанный объект не является массивом.
  • Вы получаете данные асинхронно (http-вызов). Попробуйте позвонить $scope.$apply() после того, как получите данные с сервера и обновите коллекцию
person Chandermani    schedule 06.06.2013
comment
Я перепробовал все, что мог придумать. У меня очень странное поведение: в двух случаях сетка показывает данные правильно, а во всех остальных случаях отображается пустая, хотя общее количество элементов отображает правильное количество элементов. Я пробовал много разных вещей, включая $ scope. $ Apply () в конце процедуры. Ничего не помогает. - person Naomi; 27.10.2014