«angularjs-scope» etiketlenmiş sorular

AngularJS'de kapsam, uygulama modeline başvuran bir nesnedir. İfadeler için bir yürütme bağlamıdır.


6
AngularJS'de $ scope. $ Watch ve $ scope. $ Nasıl kullanılır?
Nasıl kullanılacağını anlamıyorum $scope.$watchve $scope.$apply. Resmi belgeler yardımcı olmuyor. Özellikle anlamadıklarım: DOM'a bağlılar mı? Modelde DOM değişikliklerini nasıl güncelleyebilirim? Aralarındaki bağlantı noktası nedir? Bu öğreticiyi denedim , ancak anlaşılması $watchve $applykabul edilmesi gerekiyor. Ne yapar $applyve $watchyapar, onları nasıl uygun şekilde kullanabilirim?

18
AngularJS yönergesi kapsamında '@' ve '=' arasındaki fark nedir?
Konuyla ilgili AngularJS belgelerini dikkatlice okudum ve sonra bir direktifle uğraştım . İşte keman . İşte bazı alakalı snippet'ler: Gönderen HTML : <pane bi-title="title" title="{{title}}">{{text}}</pane> Bölme yönergesinden: scope: { biTitle: '=', title: '@', bar: '=' }, Elimde olmayan birkaç şey var: Neden kullanmak zorunda "{{title}}"olan '@'ve "title"birlikte '='? Ayrıca öğemi …

7
AngularJS denetleyicilerinde 'this' ve $ kapsamı
Gelen angularjs ana sayfasının "Oluştur Bileşenleri" bölümünde , bu örnek vardır: controller: function($scope, $element) { var panes = $scope.panes = []; $scope.select = function(pane) { angular.forEach(panes, function(pane) { pane.selected = false; }); pane.selected = true; } this.addPane = function(pane) { if (panes.length == 0) $scope.select(pane); panes.push(pane); } } selectYöntemin nasıl …

28
AngularJS: $ scope çağrılırken devam eden $ digest hatasını önle.
Açısal bir uygulama oluşturduğumdan beri sayfamı kapsamıma manuel olarak güncellemem gerektiğini fark ediyorum. Bunu yapmanın tek yolu $apply()denetleyicilerimin ve yönergelerimin kapsamından çağırmak . Buradaki sorun, aşağıdakileri okuyan konsola bir hata atmaya devam etmesidir: Hata: $ digest zaten devam ediyor Herkes bu hatayı önlemek veya aynı şeyi ancak farklı bir şekilde …

9
Alt denetleyiciden AngularJS erişim üst kapsamı
Kumandalarımı kullanarak data-ng-controller="xyzController as vm" Üst / alt iç içe denetleyicileri ile bir senaryo var. Kullanarak iç içe html üst özelliklerine erişmekte sorunum yok $parent.vm.property, ama alt denetleyicisinden üst özelliğine erişmek nasıl anlayamıyorum. Ben $ kapsamı enjekte ve sonra kullanarak denedim $scope.$parent.vm.property, ama bu çalışmıyor? Birisi tavsiye verebilir mi?

6
$ rootScope. $ yayın vs $ kapsam. $ emit
Şimdi $broadcastve arasındaki performans farkı $emitgiderildiğine göre, tercih $scope.$emitetmek için herhangi bir neden var $rootScope.$broadcastmı? Farklılar, evet. $emit kapsam hiyerarşisiyle sınırlıdır (yukarı doğru) - tasarımınıza uyuyorsa iyi olabilir, ancak bana oldukça keyfi bir kısıtlama geliyor. $rootScope.$broadcastaklıma daha mantıklı bir kısıtlama olan olayı dinlemeyi seçen her şeyde çalışıyor. Bir şey mi …

8
$ bir nesneyi izle
Bir sözlükteki değişiklikleri izlemek istiyorum, ancak bir nedenden dolayı geri arama geri çağırılamıyor. İşte kullandığım bir denetleyici: function MyController($scope) { $scope.form = { name: 'my name', surname: 'surname' } $scope.$watch('form', function(newVal, oldVal){ console.log('changed'); }); } İşte keman . Adı veya soyadı her değiştiğinde $ watch callback'in tetiklenmesini bekliyorum, ancak gerçekleşmiyor. …


5
AngularJS'de bir yönerge yazarken, yeni bir kapsam, yeni bir çocuk kapsamı veya yeni bir yalıtılmış kapsama ihtiyacım olup olmadığına nasıl karar verebilirim?
Ben yeni bir yönerge yazarken hangi kapsam türü kullanılacak belirlemek için kullanabileceğiniz bazı yönergeler arıyorum. İdeal olarak, bir dizi sorudan geçen ve yeni bir kapsam, yeni çocuk kapsamı veya yeni tecrit kapsamı olmayan doğru bir cevap veren bir akış şemasına benzer bir şey istiyorum, ancak bu muhtemelen çok fazla şey …

8
Değişkenleri depolamak için Angular'da $ rootScope'u nasıl kullanabilirim?
$rootScopeDaha sonra başka bir denetleyicide erişmek istediğim bir denetleyicide değişkenleri depolamak için nasıl kullanabilirim ? Örneğin: angular.module('myApp').controller('myCtrl', function($scope) { var a = //something in the scope //put it in the root scope }); angular.module('myApp').controller('myCtrl2', function($scope) { var b = //get var a from root scope somehow //use var b }); …

5
AngularJS'de model değişikliklerini izlerken ilk yükü nasıl yoksayabilirim?
$ Scope.fieldcontainer özelliğinde derin bir grafik olarak oturur tek bir varlık için editör olarak hizmet veren bir web sayfam var. REST API'mdan ($ resource aracılığıyla) bir yanıt aldıktan sonra, 'fieldcontainer'a bir saat ekliyorum. Bu saati sayfanın / varlığın "kirli" olup olmadığını tespit etmek için kullanıyorum. Şu anda kaydet düğmesi sıçrama …

4
Ng-include kullanırken kapsamı kaybetme
Bu modül yolları var: var mainModule = angular.module('lpConnect', []). config(['$routeProvider', function ($routeProvider) { $routeProvider. when('/home', {template:'views/home.html', controller:HomeCtrl}). when('/admin', {template:'views/admin.html', controller:AdminCtrl}). otherwise({redirectTo:'/connect'}); }]); Ev HTML'si: <div ng-include src="views.partial1"></div> partial1 HTML: <form ng-submit="addLine()"> <input type="text" ng-model="lineText" size="30" placeholder="Type your message here"> </form> HomeCtrl: function HomeCtrl($scope, $location, $window, $http, Common) { ... $scope.views …

5
Açısal bir yönerge, yönerge niteliklerinde belirtilen ifadelerdeki işlevlere argümanlar iletebilir mi?
callbackAyrı tutma kapsamı ile belirtilen bir özniteliği kullanan bir form yönergesi var : scope: { callback: '&' } İçinde oturduğum ng-repeatifade id, nesnenin geri çağırma işlevine argüman olarak içerdiği şekilde oturur : <directive ng-repeat = "item in stuff" callback = "callback(item.id)"/> Yönerge ile işim bittiğinde $scope.callback(), denetleyici işlevinden çağırır . …

10
Angularjs: 'sözdizimi olarak denetleyici' ve $ watch
controller asSözdizimi kullanılırken mülk değişikliğine nasıl abone olunur ? controller('TestCtrl', function ($scope) { this.name = 'Max'; this.changeName = function () { this.name = new Date(); } // not working $scope.$watch("name",function(value){ console.log(value) }); }); <div ng-controller="TestCtrl as test"> <input type="text" ng-model="test.name" /> <a ng-click="test.changeName()" href="#">Change Name</a> </div>

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.