選單
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

AppML 訊息


AppML 訊息和操作

當 AppML 即將執行一個操作時,它會將應用程式物件 ($appml) 傳送到控制器。

應用程式物件的一個屬性是訊息 ($appml.message),它描述了應用程式的狀態。

測試此訊息,可以根據操作新增您自己的 JavaScript 程式碼。

示例

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

AppML 訊息

以下是 AppML 可以接收的訊息列表

訊息 描述
"ready" 在 AppML 初始化後傳送,準備載入資料。
"loaded" 在 AppML 完全載入後傳送,準備顯示資料。
"display" 在 AppML 顯示資料項之前傳送。
"done" 在 AppML 完成(顯示完畢)後傳送。
"submit" 在 AppML 提交資料之前傳送。
"error" 在 AppML 遇到錯誤後傳送。

“ready”訊息

當 AppML 應用程式準備載入資料時,它會發送一個“ready”訊息。

這是為應用程式提供初始資料(起始值)的理想位置

示例

<div appml-controller="myController" appml-data="customers.js">
<h1>客戶</h1>
<p>{{today}}</p>
<table>
  <tr>
    <th>客戶</th>
    <th>城市</th>
    <th>國家</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>
自己試試 »

在上面的示例中,當 $appml.message 為“ready”時,控制器會嚮應用程式新增兩個新屬性(todaycopyright)。

當應用程式執行時,這些新屬性對應用程式可用。



“loaded”訊息

當 AppML 應用程式載入了資料(準備顯示)後,它會發送一個“loaded”訊息。

這是提供載入資料更改(如有必要)的理想位置。

示例

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

“display”訊息

每次 AppML 顯示資料項時,它都會發送一個“display”訊息。

這是修改輸出的理想位置

示例

<div appml_app="myController" appml-data="customers.js">
<h1>客戶</h1>
<table>
  <tr>
    <th>客戶</th>
    <th>城市</th>
    <th>國家</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>
自己試試 »

在上面的示例中,“CustomerName”被截斷為 15 個字元,而“Country”被轉換為大寫。


“done”訊息

當 AppML 應用程式完成資料顯示後,它會發送一個“done”訊息。

這是清理或計算應用程式資料(顯示後)的理想位置。

示例

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

“submit”訊息

當 AppML 應用程式準備提交資料時,它會發送一個“submit”訊息。

這是驗證應用程式輸入的理想位置。

示例

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

“error”訊息

如果發生錯誤,AppML 會發送一個“error”訊息。

這是處理錯誤的理想位置。

示例

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

AppML 屬性

這是常用 AppML 屬性列表

屬性 描述
$appml.message 應用程式的當前狀態。
$appml.display.name 即將顯示的資料欄位的名稱。
$appml.display.value 即將顯示的資料欄位的值。
$appml.error.number 錯誤編號。
$appml.error.description 錯誤描述。

×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援