SORU
11 Mart 2013, PAZARTESİ


Kullanarak giriş elemanı filtre angularjs

Eğer birileri yardımcı olacaktır eminim eğer ben doco içinde net bir şey kaçırmadım umarım.

Asp.net webapi bir DTO, tarih alanları ile dönüş için kullanıyorum. Bu JSON.Net kullanarak sıralanmış (biçimde '2013-03-11T12:37:38.693').

Ama GİRİŞ elemanı filtre kullanmak istiyorum, bu mümkün mü, ya da bunu yapmak için yeni bir filtre Direktifi oluşturmalıyım?

// this just displays the text value
<input ui-datetime type="text" data-ng-model="entity.date" /> 
// this doesn't work at all
<input ui-datetime type="text" data-ng-model="{{entity.date|date:'dd/MM/yyyy HH:mm:ss a'}}" /> 
// this works fine
{{entity.date|date:'dd/MM/yyyy HH:mm:ss a'}}

Kaçırdığım herhangi bir kısayol var mı?

CEVAP
11 Mart 2013, PAZARTESİ


Veri görünümünde farklı bir gösterimi var ve ben bu modeli, bir gerekir . Kısacası: ^strong>Direktifibir olarak düşünebilirsiniziki yönlü bir filtre.

Sizin göreviniz bir şey gibi görünecektir

angular.module('myApp').directive('myDirective', function() {
  return {
    require: 'ngModel',
    link: function(scope, element, attrs, ngModelController) {
      ngModelController.$parsers.push(function(data) {
        //convert data from view format to model format
        return data; //converted
      });

      ngModelController.$formatters.push(function(data) {
        //convert data from model format to view format
        return data; //converted
      });
    }
  }
});

HTML:

<input my-directive type="text" data-ng-model="entity.date" /> 

Burada jsFiddle bir çalışma örneği.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 99being99

    99being99

    2 EYLÜL 2008
  • Jeb Corliss

    Jeb Corliss

    17 Kasım 2006
  • Phymec

    Phymec

    18 Temmuz 2009