sayfa yüklendiğinde fonksiyonu çalıştırmak için? | Netgez.com
SORU
17 Mart 2013, Pazar


sayfa yüklendiğinde fonksiyonu çalıştırmak için?

Şu anda arama ve görüntüler sonuçları sağlar Angular.js bir sayfa var. Kullanıcı bir arama sonucu tıklama, Geri düğmesini tıklar. Arama sonuçları tekrar görüntülenmesini istiyorum ama arama yürütmek için tetiklemek için nasıl çözemiyorum. İşte detay:

  • Angular.js benim sayfa, Arama Sayfası, arama alanı ve arama. düğme. Kullanıcı el ile bir sorgu yazın ve bir düğmeye basabilirsiniz ve ajax sorgu harekete geçirilir ve sonuçlar görüntülenir. Ben arama terimi URL ile güncelleyin. Bu gayet iyi çalışıyor.
  • Kullanıcı arama sonucu tıklama ve farklı bir sayfa - bu iÅŸleri çok iyi alınır.
  • Kullanıcı Geri düğmesini tıklar ve geri açısal arama sayfasına gider ve doÄŸru URL, arama dönemi de dahil olmak üzere görüntülenir. Tüm iyi çalışır.
  • Beklenen arama terimini içeren URL arama terimi arama alanı deÄŸeri baÄŸlı, var. Tüm iyi çalışır.

Nasıl tekrar kullanıcı basmadan çalıştırmak için arama fonksiyonu alabilirim""? arama düğmesini Eğer bir WordPress kullanmak sonra olsaydı documentready işlevi bir fonksiyonu çalıştırmak istiyorum. Bu Angular.js eşdeğer göremiyorum.

CEVAP
17 Mart 2013, Pazar


@Mark-Rajcok dediği gibi bir taraftan çekip özel iç işlevi ile alabilirsiniz:

// at the bottom of your controller
var init = function () {
   // check if there is query in url
   // and fire search in case its value is not empty
};
// and fire it after definition
init();

Ayrıca ng-init Direktif de bir göz atabilirsiniz. Uygulama çok gibi olacak:

// register controller in html
<div data-ng-controller="myCtrl" data-ng-init="init()"></div>

// in controller
$scope.init = function () {
    // check if there is query in url
    // and fire search in case its value is not empty
};

Ama angular documentation implies (since v1.2) ng-init kullanmamayı olarak önemsiyorum. Ancak ımo uygulamanızın mimarisini bağlıdır.

Açısal app içine arka uç bir değer vermek istediğimde ng-init kullandım

<div data-ng-controller="myCtrl" data-ng-init="init('%some_backend_value%')"></div>

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VÄ°DEO

Rastgele Yazarlar

  • 24 Канал

    24 КанаÐ

    5 ÅžUBAT 2006
  • andyabc45

    andyabc45

    1 Mayıs 2011
  • Rachel Talbott

    Rachel Talbo

    26 Ocak 2011