AppML - 控制器



AppML 應用程式允許透過控制器功能控制 UI。appml-controller 標記提供 javascript 函式的名稱,該函式用作控制器。AppML 應用程式可能沒有控制器,也可能有控制器。

語法

<table appml-controller="studentController"></table>

AppML 透過應用程式物件 $appml 傳送訊息到控制器函式。基於 $appml 的屬性,我們可以在 HTML 內容上執行不同型別的操作。以下是其中一些重要的示例。

  • 初始化資料

  • 更新應用程式資料

  • 輸入/輸出處理

  • 資料驗證

  • 資料彙總

  • 錯誤處理

  • 應用程式啟動/停止

示例

student_application.html

<!DOCTYPE html>
<html lang="en-US">
   <title>Students</title>
   <style>	  
      table {
         border-collapse: collapse;
         width: 100%;
      }

      th, td {
         text-align: left;
         padding: 8px;
      }

      tr:nth-child(even) {background-color: #f2f2f2;}
   </style>
   <script src="https://w3schools.tw/appml/2.0.3/appml.js"></script>
<body>
   <h1>Students</h1>
   <table appml-data="students" appml-controller="studentController">
      <tr>
         <th>Student</th>
         <th>Class</th>
         <th>Section</th>
      </tr>
      <tr appml-repeat="records">
         <td>{{studentName}}</td>
         <td>{{class}}</td>
         <td>{{section}}</td>
      </tr>
   </table>
   <script>
      var students = {
         "records":[
            {"studentName":"Ramesh","class":"12","section":"White"},
            {"studentName":"Suresh","class":"12","section":"Red"},
            {"studentName":"Mohan","class":"12","section":"Red"},
            {"studentName":"Robert","class":"12","section":"Red"},
            {"studentName":"Julie","class":"12","section":"White"},
            {"studentName":"Ali","class":"12","section":"White"},
            {"studentName":"Harjeet","class":"12","section":"White"}
         ]};
      function studentController($appml) {
         if ($appml.message == "display") {
            if ($appml.display.name == "studentName") {
               $appml.display.value = $appml.display.value.toUpperCase();
            }
         }
      }
   </script>
</body>
</html>

輸出

在 Web 伺服器上部署應用程式並訪問 html 頁面。驗證輸出。

first application
廣告