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

  • echifitness

    echifitness

    9 Kasım 2008
  • geraldnonadoez

    geraldnonado

    3 Temmuz 2013
  • jkimisyellow...ish

    jkimisyellow

    8 Temmuz 2009