kintone編碼指南

information

本頁面使用機器翻譯而成。
機器翻譯免責聲明 (External link)

目錄

概要

使用kintone的「JavaScript/CSS自定義」功能,可以自定義kintone的功能、應用行為和介面。
此外,還可以使用kintone REST API與外部系統集成數據。
本文將對kintone中JavaScript的自定義和外部系統集成時的注意事項進行說明。

關於如何使用JavaScript自定義kintone和應用,請參考kintone用戶説明。

JavaScript 編碼注意事項

文字編碼

以UTF-8格式保存(不帶 BOM)。

變數命名空間

請勿修改已有的全域對象,因為kintone可能無法正常工作。
此外,不要使用全域變數,而是在直接函數的作用域或塊作用域內定義變數。

如果必須使用跨作用域共用的變數,請使用以下方法防止全域污染:

不要使用全域變數
1
2
3
4
5
6
7
// 將變數定義為即時函數中的局部變數
(() => {
  // 壞例子
  globalVariable = 1; // 將變數定義為全域變數
  // 很好的例子
  const localVariable = 1; // 將變數定義為即時函數中的局部變數
})();

letconst 如果使用,則可以使用塊作用域定義變數,如下所示:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
// 在塊作用域中將變數定義為局部變數
{
  // 壞例子
  // 兩者都將變數定義為全域變數
  globalVariable1 = 1;
  var globalVariable2 = 1;
  // 很好的例子
  // 兩者都將變數定義為塊作用域中的局部變數
  const localVariable1 = 1;
  let localVariable2 = 1;
}
不要添加、修改或引用現有的全域物件
1
2
3
4
5
6
7
8
(() => {
  // 壞例子
  cybozu.foo = 'bar'; // 向現有全域物件添加或重寫新屬性
  const foo = cybozu.foo; // 引用現有全域物件
  // 很好的例子
  myNameSpace = {}; // 使用空間物件
  myNameSpace.foo = 'bar';
})();

kintone中使用的id和類屬性

分配給每個元素的id和 class 屬性的值如有變更,恕不另行通知。
DOM 結構也可能會發生變化。

自訂時,請勿進行引用或修改以下內容的自定義:

  • 每個元素的id和 class 屬性的值
  • 通過kintone JavaScript API以外的方法獲取的產品DOM結構

使用DOM元素時,請使用kintone JavaScript API,如有變更,恕不另行通知。

使用JavaScript API 獲取的元素的自訂

JavaScript API獲取的元素中添加的元素可能會受到kintone CSS的影響。
因此,添加元素的顯示可能會因kintone的更新而發生變化。

有關可以獲取元素的 API 清單,請查看以下頁面:
kintone JavaScript API:選取元素

獲取 URL

使用kintone.api.url()kintone.api.urlForGet() ,獲取kintone的URL。
這樣它就可以在將來的版本中工作。

無法使用 JavaScript API 進行自定義的地方

粘貼到空格或主題內文中的以下部分無法使用JavaScript API進行自定義。

  • 應用程式的記錄清單
  • 圖表

確認它是否適用於多個網路瀏覽器

建議您使用多個網路瀏覽器進行操作。
根據網路瀏覽器的類型和版本,您可能看不到預期的行為。

如果要載入的JavaScript程式出現問題,kintone將無法正常工作。
確保自訂的kintone功能正常工作。

使用kintone REST API的注意事項

有問題的程式可能會降低性能或阻止您使用服務。

避免在短時間內發送大量請求

自動發送大量請求的程式或同時並行執行大量請求的程式都可能導致回應不良等服務降級。
對於導致伺服器負載過高或資源消耗過大的請求,可能會強制實施訪問限制。

設置相應的使用者代理

為了能夠判斷從哪個服務或工具發送請求,請設置相應的使用者代理(「User-Agent」標頭)。

有關使用者代理的指南,請參閱 RFC 9110「User-Agent」。
10.1.5. User-Agent | RFC 9110 (External link)

盡可能避免並行處理

如果同時執行添加、更新或刪除應用或記錄,則可能會發生死鎖並導致錯誤。
並行執行 kintone REST API 時請小心。

kintone更新的影響

根據所創建程式的實現情況,kintone更新后,自定義設置可能無法正常工作。
根據需要編輯 JavaScript 和 CSS 檔案,然後重新上傳。

如需降低kintone更新的影響,請使用kintone JavaScript API。
API 規範披露和規範變更政策

安全性

為避免因自定義而出現安全問題,安全編碼準則進行編碼。
安全編碼準則