Ultimele tutoriale de dezvoltare web
 

AppML Mesaje


Mesaje AppML și acțiuni

Când AppML este pe cale de a efectua o acțiune, acesta trimite obiectul de aplicare ($appml) la controler.

Una dintre proprietățile obiectului de aplicare este un mesaj ($appml.message) , care descrie starea aplicației.

Testarea acest mesaj, vă permite să adăugați propriul cod JavaScript, în funcție de acțiune.

Exemplu

function myController($appml) {
    if ($appml.message == "ready") {alert ("Hello Application");}
}
Încearcă - l singur »

AppML Mesaje

Aceasta este o listă a mesajelor AppML care pot fi primite:

Mesaj Descriere
"ready" Trimis după AppML este inițiată, și gata pentru a încărca date.
"loaded" Trimis după AppML este complet încărcat, gata pentru a afișa date.
"display" Trimis înainte de AppML afișează un element de date.
"done" Trimis după AppML se face (finished displaying) .
"submit" Trimis înainte de AppML transmite date.
"error" Trimis după AppML a întâmpinat o eroare.

"ready" Mesaj

Atunci când o aplicație AppML este gata pentru a încărca date, acesta va trimite un "ready" mesaj.

Acesta este locul perfect pentru a oferi aplicația cu datele inițiale (start values) :

Exemplu

<div appml-controller="myController" appml-data="customers.js">
<h1>Customers</h1>
<p>{{today}}</p>
<table>
  <tr>
    <th>Customer</th>
    <th>City</th>
    <th>Country</th>
  </tr>
  <tr appml-repeat="records">
    <td>{{CustomerName}}</td>
    <td>{{City}}</td>
    <td>{{Country}}</td>
  </tr>
</table>
<p>Copyright {{copyright}}</p>
</div>

<script>
function myController($appml) {
    if ($appml.message == "ready") {
        $appml.today = new Date();
        $appml.copyright = "w3ii"
    }
}
</script>
Încearcă - l singur »

In exemplul de mai sus, atunci când $ appml.message este "ready" , controlorul adaugă două noi proprietăți la cererea ( today and copyright ) de ( today and copyright ) .

Atunci când aplicația rulează, noile proprietăți sunt disponibile la cerere.


"loaded" Mesajul

Atunci când o aplicație AppML este încărcată cu date (ready to display) , acesta va trimite un " loaded " mesaj.

Acesta este locul perfect pentru a oferi modificări (if necessary) este (if necessary) la datele încărcate.

Exemplu

function myController($appml) {
    if ($appml.message == "loaded") {
        // compute your values here before display
    }
}

"display" Mesajul

De fiecare dată când AppML afișează un element de date, acesta va trimite un " display " mesaj.

Acesta este locul perfect pentru a modifica ieșire:

Exemplu

<div appml_app="myController" appml-data="customers.js">
<h1>Customers</h1>
<table>
  <tr>
    <th>Customer</th>
    <th>City</th>
    <th>Country</th>
  </tr>
  <tr appml-repeat="records">
    <td>{{CustomerName}}</td>
    <td>{{City}}</td>
    <td>{{Country}}</td>
  </tr>
</table>
</div>

<script>
function myController($appml) {
    if ($appml.message == "display") {
        if ($appml.display.name == "CustomerName") {
            $appml.display.value = $appml.display.value.substr(0,15);
        }
        if ($appml.display.name == "Country") {
            $appml.display.value = $appml.display.value.toUpperCase();
        }
    }
}
</script>
Încearcă - l singur »

In exemplul de mai sus, "CustomerName" este trunchiată la 15 de caractere, și "Country" este convertit în majuscule.


"done" Mesajul

Atunci când o aplicație AppML a terminat afișarea datelor, acesta va trimite un " done " mesajul.

Acesta este locul perfect pentru a curăța sau de a calcula datele aplicației (după afișare).

Exemplu

<script>
function myController($appml) {
    if ($appml.message == "done") {
        calculate data here
    }
}
</script>

"submit" Mesajul

Atunci când o cerere AppML este gata să prezinte date, acesta va trimite un " submit " mesajul.

Acesta este locul perfect pentru a valida intrare aplicație.

Exemplu

<script>
function myController($appml) {
    if ($appml.message == "submit") {
        validate data here
    }
}
</script>

"error" Mesajul

Dacă apare o eroare, AppML va trimite o " error " mesaj.

Acesta este locul perfect pentru a trata erorile.

Exemplu

<script>
function myController($appml) {
    if ($appml.message == "error") {
        alert ($appml.error.number + " " + $appml.error.description)
    }
}
</script>

AppML Proprietăți

Aceasta este o listă a unor proprietăți AppML utilizate în mod obișnuit:

Proprietate Descriere
$appml.message Starea actuală a cererii.
$appml.display.name Numele câmpului de date cu privire la care urmează să fie afișate.
$appml.display.value Valoarea câmpului de date cu privire la care urmează să fie afișate.
$appml.error.number Numărul de eroare.
$appml.error.description Descrierea erorii.