跳至主要內容

WebPreferences 物件

  • devTools 布林值 (選用) - 是否啟用 DevTools。如果設定為 false,則無法使用 BrowserWindow.webContents.openDevTools() 開啟 DevTools。預設值為 true
  • nodeIntegration 布林值 (選用) - 是否啟用 Node 整合。預設值為 false
  • nodeIntegrationInWorker 布林值 (選用) - 是否在 Web Worker 中啟用 Node 整合。預設值為 false。有關此內容的更多資訊,請參閱多執行緒
  • nodeIntegrationInSubFrames 布林值 (選用) - 實驗性選項,用於在子框架(例如 iframe 和子視窗)中啟用 Node.js 支援。所有預載都會為每個 iframe 載入,您可以使用 process.isMainFrame 來判斷您是否在主框架中。
  • preload 字串 (選用) - 指定在頁面中執行其他腳本之前載入的腳本。無論 Node 整合是否開啟,此腳本始終可以存取 Node API。該值應該是腳本的絕對檔案路徑。當 Node 整合關閉時,預載腳本可以將 Node 全域符號重新引入全域範圍。請參閱此處的範例。
  • sandbox 布林值 (選用) - 如果設定,這將沙盒化與視窗關聯的渲染器,使其與 Chromium OS 層級的沙盒相容,並停用 Node.js 引擎。這與 nodeIntegration 選項不同,並且預載腳本可用的 API 更加受限。請在此處閱讀有關該選項的更多資訊 這裡
  • session Session (選用) - 設定頁面使用的 Session。除了直接傳遞 Session 物件之外,您也可以選擇改用 partition 選項,該選項接受分割字串。當同時提供 sessionpartition 時,將優先使用 session。預設值為預設 Session。
  • partition 字串 (選用) - 根據 Session 的分割字串設定頁面使用的 Session。如果 partitionpersist: 開頭,則該頁面將使用應用程式中所有具有相同 partition 的頁面都可使用的持久性 Session。如果沒有 persist: 前綴,該頁面將使用記憶體 Session。透過分配相同的 partition,多個頁面可以共用相同的 Session。預設值為預設 Session。
  • zoomFactor 數字 (選用) - 頁面的預設縮放係數,3.0 表示 300%。預設值為 1.0
  • javascript 布林值 (選用) - 啟用 JavaScript 支援。預設值為 true
  • webSecurity 布林值 (選用) - 當為 false 時,它將停用同源政策(通常是人們使用測試網站),如果使用者尚未設定此選項,則將 allowRunningInsecureContent 設定為 true。預設值為 true
  • allowRunningInsecureContent 布林值 (選用) - 允許 https 頁面執行來自 http URL 的 JavaScript、CSS 或外掛程式。預設值為 false
  • images 布林值 (選用) - 啟用圖片支援。預設值為 true
  • imageAnimationPolicy 字串 (選用) - 指定如何執行圖片動畫(例如 GIF)。可以是 animateanimateOncenoAnimation。預設值為 animate
  • textAreasAreResizable 布林值 (選用) - 使 TextArea 元素可調整大小。預設值為 true
  • webgl 布林值 (選用) - 啟用 WebGL 支援。預設值為 true
  • plugins 布林值 (選用) - 是否應該啟用外掛程式。預設值為 false
  • experimentalFeatures 布林值 (選用) - 啟用 Chromium 的實驗性功能。預設值為 false
  • scrollBounce 布林值 (選用) macOS - 在 macOS 上啟用捲動彈跳(橡皮筋)效果。預設值為 false
  • enableBlinkFeatures 字串 (選用) - 以 , 分隔的功能字串列表,例如 CSSVariables,KeyboardEventKey 以啟用。可以在RuntimeEnabledFeatures.json5檔案中找到支援的功能字串完整列表。
  • disableBlinkFeatures 字串 (選用) - 以 , 分隔的功能字串列表,例如 CSSVariables,KeyboardEventKey 以停用。可以在RuntimeEnabledFeatures.json5檔案中找到支援的功能字串完整列表。
  • defaultFontFamily 物件 (選用) - 設定字型系列預設字型。
    • standard 字串 (選用) - 預設值為 Times New Roman
    • serif 字串 (選用) - 預設值為 Times New Roman
    • sansSerif 字串 (選用) - 預設值為 Arial
    • monospace 字串 (選用) - 預設值為 Courier New
    • cursive 字串 (選用) - 預設值為 Script
    • fantasy 字串 (選用) - 預設值為 Impact
    • math 字串 (選用) - 預設值為 Latin Modern Math
  • defaultFontSize 整數 (選用) - 預設值為 16
  • defaultMonospaceFontSize 整數 (選用) - 預設值為 13
  • minimumFontSize 整數 (選用) - 預設值為 0
  • defaultEncoding 字串 (選用) - 預設值為 ISO-8859-1
  • backgroundThrottling 布林值 (選用) - 當頁面變成背景時,是否節流動畫和計時器。這也會影響頁面可見性 API。當在單個browserWindow中顯示的至少一個webContents停用backgroundThrottling時,將為整個視窗和它顯示的其他webContents繪製和交換框架。預設值為 true
  • offscreen 物件 | 布林值 (選用) - 是否為瀏覽器視窗啟用離屏渲染。預設值為 false。有關更多詳細資訊,請參閱離屏渲染教學
    • useSharedTexture 布林值 (選用) 實驗性 - 是否對加速繪圖事件使用 GPU 共用紋理。預設值為 false。有關更多詳細資訊,請參閱離屏渲染教學
  • contextIsolation 布林值 (選用) - 是否在單獨的 JavaScript 環境中執行 Electron API 和指定的 preload 腳本。預設值為 truepreload 腳本在其中執行的環境將僅能存取其自己的專用 documentwindow 全域變數,以及其自己的一組 JavaScript 內建物件 (ArrayObjectJSON 等),這些全域變數和內建物件對於載入的內容都是不可見的。Electron API 僅在 preload 腳本中可用,而不在載入的頁面中。當載入可能不受信任的遠端內容時,應使用此選項,以確保載入的內容無法竄改 preload 腳本和任何正在使用的 Electron API。此選項使用Chrome 內容腳本使用的相同技術。您可以透過在「主控台」標籤頂部的組合方塊中選取「Electron 隔離環境」項目來存取開發人員工具中的此環境。
  • webviewTag 布林值 (選用) - 是否啟用<webview> 標籤。預設值為 false注意:<webview> 設定的 preload 腳本在執行時將啟用 Node 整合,因此您應確保遠端/不受信任的內容無法建立具有可能惡意的 preload 腳本的 <webview> 標籤。您可以使用 webContents 上的 will-attach-webview 事件來剝離 preload 腳本,並驗證或變更 <webview> 的初始設定。
  • additionalArguments string[] (選用) - 一個字串列表,將會附加到此應用程式的渲染程序中的 process.argv。適用於將少量數據傳遞到渲染程序的預載腳本。
  • safeDialogs boolean (選用) - 是否啟用瀏覽器樣式的連續對話框保護。預設值為 false
  • safeDialogsMessage string (選用) - 當觸發連續對話框保護時要顯示的訊息。如果未定義,將使用預設訊息,請注意,目前預設訊息為英文,未本地化。
  • disableDialogs boolean (選用) - 是否完全停用對話框。會覆蓋 safeDialogs。預設值為 false
  • navigateOnDragDrop boolean (選用) - 是否在將檔案或連結拖放到頁面上時導致導航。預設值為 false
  • autoplayPolicy string (選用) - 應用於視窗內容的自動播放策略,可以是 no-user-gesture-requireduser-gesture-requireddocument-user-activation-required。預設值為 no-user-gesture-required
  • disableHtmlFullscreenWindowResize boolean (選用) - 是否在進入 HTML 全螢幕時防止視窗調整大小。預設值為 false
  • accessibleTitle string (選用) - 提供給螢幕閱讀器等輔助工具的替代標題字串。此字串不會直接顯示給使用者。
  • spellcheck boolean (選用) - 是否啟用內建的拼寫檢查器。預設值為 true
  • enableWebSQL boolean (選用) - 是否啟用 WebSQL api。預設值為 true
  • v8CacheOptions string (選用) - 強制執行 blink 使用的 v8 程式碼快取策略。可接受的值為
    • none - 停用程式碼快取
    • code - 基於啟發式的程式碼快取
    • bypassHeatCheck - 繞過程式碼快取啟發式,但使用延遲編譯
    • bypassHeatCheckAndEagerCompile - 與上述相同,只是編譯是立即進行。預設策略為 code
  • enablePreferredSizeMode boolean (選用) - 是否啟用偏好大小模式。偏好大小是包含文件佈局所需的最小大小,而無需滾動。啟用此功能會在偏好大小變更時,在 WebContents 上發出 preferred-size-changed 事件。預設值為 false
  • transparent boolean (選用) - 是否啟用來賓頁面的背景透明度。預設值為 true注意:來賓頁面的文字和背景顏色來自其根元素的色彩配置。啟用透明度時,文字顏色仍會相應變更,但背景將保持透明。