最新的Web开发教程
 

AppML控制器


一个AppML控制器的目的,是让您控制您的应用程序。


什么可以控制器里做?

  • 设置初始数据
  • 更改应用程序数据
  • 处理输入和输出
  • 验证数据
  • 汇总数据
  • 处理错误
  • 启动和停止的应用
  • 以及更多

无控制器

默认情况下,AppML应用程序运行无控制器:

<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>
试一试»

与控制器

随着AppML控制器,可以控制JavaScript应用程序。

该控制器是一个JavaScript函数, 你所提供的

所述appml-controller属性用于指控制器功能。

<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>
试一试»

该控制器(myControlller)在上面的例子中,的值改变"CustomerName"被显示之前为大写。

如果你有一个控制器,AppML将应用对象发送($appml)控制器,每一个重要的行动。

一个应用程序属性的是消息($appml.message)描述应用程序的状态。

信息 描述
ready AppML发送后启动,并准备加载数据。
loaded AppML后发送满载,准备显示数据。
display 发送AppML显示一个数据项之前。
done AppML完成后发送(finished displaying)
submit 发送AppML提交数据之前。
error AppML遇到了一个错误后发送。

消息在下一章解释。