メインコンテンツへ飛ぶ
Soon, @electron packages on npm will require Node.js 22 LTS. Read more on our blog.

webUtils

Web API オブジェクト (File、Blob など) とやり取りするためのユーティリティ層

Process: Renderer

info

If you want to call this API from a renderer process with context isolation enabled, place the API call in your preload script and expose it using the contextBridge API.

メソッド

webUtils モジュールには以下のメソッドがあります。

webUtils.getPathForFile(file)

  • file File - ウェブの File オブジェクト。

戻り値 string - この File オブジェクトが指すファイルシステムのパス。 渡されたオブジェクトが File オブジェクトでない場合、例外が送出されます。 渡された File オブジェクトが JS 内で構築され、ディスク上のファイルに由来しない場合、空の文字列が返されます。

このメソッドは、以前の path プロパティを付けた File オブジェクト拡張の置き換えとして用意されました。 以下にサンプルを示します。

// Before (renderer)
const oldPath =document.querySelector('input[type=file]').files[0].path
// After

// Renderer:

const file =document.querySelector('input[type=file]').files[0]
electronApi.doSomethingWithFile(file)

// Preload script:

const{ contextBridge, webUtils }=require('electron')

contextBridge.exposeInMainWorld('electronApi',{
doSomethingWithFile(file){
const path = webUtils.getPathForFile(file)
// Do something with the path, e.g., send it over IPC to the main process.
// It's best not to expose the full file path to the web content if possible.
}
})

AltStyle によって変換されたページ (->オリジナル) /