組合多個onEdit觸發函數
在開發Google Sheets腳本時,有時需要使用多個onEdit觸發函數來處理不同類型的觸發函數來處理不同類型的事件。但是,腳本不能包含兩個同名的函數,這可能會導致衝突。本文示範如何將多個 onEdit 觸發函數合併或組合成一個函數。
問題:
考慮以下兩個腳本函數,它們用於處理不同的Google 表格中編輯值時發生的事件:
function onEdit(e) {
// Dependent Dropdown list
}
function onEdit2(e) {
// Add row by checkboxes
}
登入後複製
這些函數發生衝突,因為它們具有相同的名稱onEdit。要解決此衝突,我們需要重新命名其中一個函數,然後建立一個名為 onEdit 的包裝函數來呼叫其他兩個函數。
解決方案:
- 將其中一個函數重新命名為描述性名稱,例如onEditDependentDropdownList:
function onEditDependentDropdownList(e) {
// Dependent Dropdown list
}
登入後複製
-
建立一個名為onEdit 的包裝函數,呼叫其他兩個函數:
function onEdit(e) {
onEditDependentDropdownList(e);
onEdit2(e);
}
登入後複製
這個包裝函數可以由onEdit 觸發器調用,它將執行其他兩個函數。
好處:
組合多個onEdit將觸發器函數合併為單一函數有幾個好處:
- 它不需要為每函數有幾個好處:
-
- 它無需為每個函數會建立單獨的觸發器,從而簡化了腳本維護。
它可以更輕鬆地進行調試和測試。
它增強了程式碼的可讀性和組織性。
- 相關資源:
-
- [兩個OnEdit 函數不能一起工作](https: //stackoverflow.com/questions/38877192/two -onedit-functions-not-working-together)
- [多個OnEdit 函數的最佳實踐](https://developers.google.com/apps-script /guides/sheets/best-practices# multiple_onedit_functions)
[如何在同一個谷歌腳本(Google表格)中執行多個onEdit 函數? ](https://stackoverflow.com/questions/30496451/how- to-run-multiple-onedit-functions-in-the-same-google-script-google-sheets)[將多個onEdit 函數括起來](https://productforums.google.com/d/topic /docs-scripting/iltBt7xlbcI/
以上是如何在 Google Sheets 中組合多個「onEdit」觸發函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!