AppML- beheerders


Die doel van 'n AppML-beheerder is om jou jou toepassing te laat beheer .


Wat kan 'n kontroleerder doen?

  • Stel aanvanklike data
  • Verander toepassingsdata
  • Hanteer invoer en afvoer
  • Valideer data
  • Som data op
  • Hanteer foute
  • Begin en stop toepassings
  • En baie meer

Sonder 'n kontroleerder

By verstek loop AppML-toepassings sonder 'n kontroleerder:

Voorbeeld

<table appml-data="customers.js">
<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>

Met 'n kontroleerder

Met 'n AppML-beheerder kan jy jou toepassing met JavaScript beheer .

Die kontroleerder is 'n JavaScript-funksie wat deur jou verskaf word .

Die appml-beheerder- kenmerk word gebruik om na 'n kontroleerderfunksie te verwys.

Voorbeeld

<h1>Customers</h1>
<table appml-data="customers.js" appml-controller="myController">
  <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>

<script>
function myController($appml) {
    if ($appml.message == "display") {
        if ($appml.display.name == "CustomerName") {
            $appml.display.value = $appml.display.value.toUpperCase();
        }
    }
}
</script>

Die kontroleerder (myController) in die voorbeeld hierbo verander die waarde van "CustomerName" na hoofletters, voordat dit vertoon word.

As jy 'n beheerder het, sal AppML die toepassingsobjek ($appml) na die beheerder stuur, vir elke belangrike aksie.

Een van die toepassingseienskappe is 'n boodskap ($appml.message), wat die toepassingstatus beskryf.

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.

Boodskappe word in die volgende hoofstuk verduidelik.