AppML- Nachrichten


AppML-Nachrichten und -Aktionen

Wenn AppML im Begriff ist, eine Aktion auszuführen, sendet es das Anwendungsobjekt ($appml) an den Controller.

Eine der Eigenschaften des Anwendungsobjekts ist eine Nachricht ($appml.message), die den Anwendungsstatus beschreibt.

Durch das Testen dieser Nachricht können Sie je nach Aktion Ihren eigenen JavaScript-Code hinzufügen.

Beispiel

function myController($appml) {
    if ($appml.message == "ready") {alert ("Hello Application");}
}

AppML-Nachrichten

Dies ist eine Liste von AppML-Nachrichten, die empfangen werden können:

Message Description
"ready" Sent after AppML is initiated, and ready to load data.
"loaded" Sent after AppML is fully loaded, ready to display data.
"display" Sent before AppML displays a data item.
"done" Sent after AppML is done (finished displaying).
"submit" Sent before AppML submits data.
"error" Sent after AppML has encountered an error.

Die „Fertig“-Meldung

Wenn eine AppML-Anwendung zum Laden von Daten bereit ist, sendet sie eine „Bereit“-Nachricht.

Hier ist der perfekte Ort, um der Anwendung Ausgangsdaten (Startwerte) zu liefern:

Beispiel

<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 = "W3Schools"
    }
}
</script>

Wenn im obigen Beispiel die $appml.message „bereit“ ist, fügt der Controller der Anwendung zwei neue Eigenschaften hinzu ( today und copyright ).

Wenn die Anwendung ausgeführt wird, sind die neuen Eigenschaften für die Anwendung verfügbar.


Die "geladene" Nachricht

Wenn eine AppML-Anwendung mit Daten geladen wird (zur Anzeige bereit), sendet sie eine „ geladene “ Nachricht.

Dies ist der perfekte Ort, um (falls erforderlich) Änderungen an den geladenen Daten vorzunehmen.

Beispiel

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

Die "Anzeige"-Nachricht

Jedes Mal, wenn AppML ein Datenelement anzeigt, sendet es eine „ Display “-Nachricht.

Dies ist der perfekte Ort, um die Ausgabe zu ändern:

Beispiel

<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>

Im obigen Beispiel wird „CustomerName“ auf 15 Zeichen gekürzt und „Country“ in Großbuchstaben umgewandelt.


Die „Fertig“-Meldung

Wenn eine AppML-Anwendung die Anzeige der Daten beendet hat, sendet sie eine „Fertig -Nachricht.

Dies ist der perfekte Ort, um Anwendungsdaten (nach der Anzeige) zu bereinigen oder zu berechnen.

Beispiel

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

Die „Submit“-Nachricht

Wenn eine AppML-Anwendung bereit ist, Daten zu übermitteln, sendet sie eine „submit -Nachricht.

Dies ist der perfekte Ort, um Anwendungseingaben zu validieren.

Beispiel

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

Die "Fehler"-Meldung

Wenn ein Fehler auftritt, sendet AppML eine „ Fehler “-Nachricht.

Dies ist der perfekte Ort, um mit Fehlern umzugehen.

Beispiel

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

AppML-Eigenschaften

Dies ist eine Liste einiger häufig verwendeter AppML-Eigenschaften:

Property Description
$appml.message The current state of the application.
$appml.display.name The name of the data field about to be displayed.
$appml.display.value The value of the data field about to be displayed.
$appml.error.number The error number.
$appml.error.description The error description.