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

  • Matt Davis

    Matt Davis

    4 ŞUBAT 2006
  • newreleaseblitz

    newreleasebl

    13 Ocak 2010
  • POGProductionz

    POGProductio

    27 NİSAN 2012