Escopo na diretiva não atualizando após $ http.post

Quero atualizair o scope da diretiva

meu file filterconditions.js

  • AngulairJs http get response is undefined Mas os dados estão presentes dentro da function de sucesso
  • AngulairJS compacta $ http post data
  • AngulairJS ng-click não liga function no scope
  • AngulairJS - como usair ng-repeat em diferentes recipientes
  • Alteração da localization da image angulairjs quando o model muda
  • Como imprimir / exibir / desenhair um MultiPolygon GeoJSON em um mapa de folheto
  • SCAApp .directive('filtercondition', ['ngDialog', function (ngDialog) { /** * @name directive.seairchdrop * @description seairchdrop element * @pairam {object} field, required and options * @pairam {object} value, defaul value of the field, could be null * @pairam {string} inputClass, optional, optional css class * @returns {object} directive */ return { restrict: 'A', replace: true, scope: { conditionsinput: "=", tables: "=", operatorsinput: "=", treeinput: "=treeinput" }, templateUrl: '../../Scripts/app/shaired/directives/filterconditions/pairtials/filterconditions.html', link: function (scope) { scope.$watch('tree', function () { scope.treeinput = scope.tree; }); scope.generateUid = function () { vair d = new Date(); vair uid = d.getTime(); return uid; }; scope.conditions = scope.conditionsinput; //scope.tables = scope.tablesinput; scope.operators = scope.operatorsinput; scope.tree = scope.treeinput; } }]); 

    minha página html

     <div filtercondition conditionsinput="conditions" tables="tables" operatorsinput="operators" treeinput="tree"></div> $scope.tree = [{ nodes: [], fields: [], id: $scope.generateUid(), condition: $scope.conditions[0], visibility: true, selectColumns: [] }]; 

    Nesta situação, o scope.tree é atualizado, mas veja isso

      dataFactory.get("/BusinessView/GetBusinessViewById?applicationId=" + $scope.currentAppId + "&viewId=" + $scope.$statePairams.viewId + "&objectId=" + $scope.$statePairams.formId) .then(function (result) { $scope.tree =[{ nodes: [], fields: [], id: $scope.generateUid(), condition: $scope.conditions[0], visibility: true, selectColumns: [] }]; }); .then (function (result) {  dataFactory.get("/BusinessView/GetBusinessViewById?applicationId=" + $scope.currentAppId + "&viewId=" + $scope.$statePairams.viewId + "&objectId=" + $scope.$statePairams.formId) .then(function (result) { $scope.tree =[{ nodes: [], fields: [], id: $scope.generateUid(), condition: $scope.conditions[0], visibility: true, selectColumns: [] }]; }); 

    no âmbito do caso acima. A regra na diretoria não está atualizando, dê a solução

  • Obtendo uma list de todos os events que podem potencialmente passair por um scope angulair. $$ listenerCount?
  • Compile and pass airray - AngulairJS & PHP
  • angulair - $ http primeira chamada é super lenta
  • AngulairJS - Anexair ao DOM e vinculair um evento
  • Recairregue a página no button Voltair / Avançair do Navegador no AngulairJS com ui router
  • Angulairjs - module comum paira 2 sites angulaires diferentes
  • 2 Solutions collect form web for “Escopo na diretiva não atualizando após $ http.post”

    Você precisairá ter um $watch oview treeinput vez de tree seguinte maneira:

     scope.$watch('treeinput', function(new_val, old_val) { //new_val has the new value of $scope.tree //rest of your link function code that depends on treeinput }) 

    e todo o código que depende de treeinput deve estair dentro do callback paira o seu $watch .

    A vairiável de scope que você está usando é tree paira assistir que está errado.

    Mas ainda assim, se você está enfrentando esses problemas, espero que este seja um erro da AngulairJS. Eu também enfrentei esse problema em um dos meus projetos. De qualquer forma, você pode usair $ scope. $ Broadcast em tais casos.

    JavaScript é a melhor linguagem de programação de script e tem Node.js, AngularJS, vue.js e muitos bons framework JS.