SORU
19 AĞUSTOS 2013, PAZARTESİ


Onay ng-click - AngularJS iletişim

Özel bir açısal js yönergesini kullanarak: ng-click, bir onay İletişim Kur yapmaya çalışıyorum

app.directive('ngConfirmClick', [
    function(){
        return {
            priority: 1,
            terminal: true,
            link: function (scope, element, attr) {
                var msg = attr.ngConfirmClick || "Are you sure?";
                var clickAction = attr.ngClick;
                element.bind('click',function (event) {
                    if ( window.confirm(msg) ) {
                        scope.$eval(clickAction)
                    }
                });
            }
        };
}])

Bu harika çalışıyor ama ne yazık ki, etiketi talimatımı kullanarak içindeki ifadeler değerlendirilmez:

<button ng-click="sayHi()" ng-confirm-click="Would you like to say hi?">Say hi to {{ name }}</button>

(adı bu durumda değerlendirilir. Talimatımı terminal parametre nedeniyle gibi görünüyor. Geçici çözüm, herhangi bir fikir var mı?

Benim kodu test etmek için: http://plnkr.co/edit/EHmRpfwsgSfEFVMgRLgj?p=preview

CEVAP
19 AĞUSTOS 2013, PAZARTESİ


Eğer ng-click kullanarak sakıncası yoksa, TAMAM çalışır. Sadece başka bir şey için yeniden adlandırın ve hala tıklatma işleyicisi iki kez sorun yok tetiklenmesi kaçınarak şu anda ise öznitelik okuyabilirsiniz.

http://plnkr.co/edit/YWr6o2?p=preview

Sorun terminal diğer yönergeler çalıştırmak için talimat olduğunu düşünüyorum. Veri bağlama {{ }} ile sadece tahminen terminal iptal edildi ng-bind Direktif, bir diğer adıdır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Android Authority

    Android Auth

    3 NİSAN 2011
  • Jonathan Morrison

    Jonathan Mor

    24 Mart 2010
  • ParryGripp

    ParryGripp

    12 AĞUSTOS 2006