存取本機檔案
我們可以很輕鬆地使用原生的 Node.js API 來完成存取本機檔案的功能。這讓我們在插件系統中完成這樣的任務變得更加容易。
使用 fs
模組存取本機檔案
fs
模組存取本機檔案利用 Node.js 的 fs
的一系列方法來完成本機檔案存取,對本機檔案系統進行操作。例如,可以使用 fs.readFile()
方法來讀取檔案內容,使用 fs.writeFile()
方法來寫入檔案。這裏是一個範例:
const fs = require('fs');
// 讀取檔案
fs.readFile('/path/to/file', (err, data) => {
if (err) throw err;
console.log(data);
});
// 寫入檔案
fs.writeFile('/path/to/file', 'hello world', (err) => {
if (err) throw err;
console.log('done');
});
這些方法都是異步的,所以它們不會阻塞 UI,從而可以保證應用的高效能。另外,fs
模組還提供了一些其他有用的方法,例如可以用 fs.stat()
方法來獲取檔案的大小、新增時間等資訊,也可以用 fs.rename()
方法來重命名檔案。透過使用 fs
模組,我們可以很方便地存取本機檔案。
🦄 最佳實踐: 儘可能不要使用 Node.js 裏面的 sync 方法,這些方法會導致 UI 執行緒阻塞,從而導致使用者介面卡頓,使用者體驗極差。此外,使用異步方法能夠提高程式的執行效率,因為它不會阻塞程式的執行,可以同時處理多個任務。
使用原生對話框取得檔案路徑
Eagle Plugin API 提供了一個 dialog
模組,可以用來新增原生系統對話框,進行檔案儲存及選取。這裏有耶些範例:
範例一:彈出檔案選擇對話框
let result = await eagle.dialog.showOpenDialog({
properties: ['openFile', 'openDirectory']
});
範例二:彈出儲存對話框
let result = await eagle.dialog.showSaveDialog({
properties: ['openDirectory']
});
如果你需要更詳細的介紹,可以參考 dialog 模組。
Last updated