node.js&electron 工作笔记

  1. 获取本机临时文件夹路径
const os = require('os');
console.log(os.tmpdir())  //  C:\Users\admin\AppData\Local\Temp
  1. 获取文件夹大小
export const queryFileSize = (path) => {
  const { size } = fs.statSync(path)
  return sizeToStr(size)

}

queryFileSize('src/views/node/file/1.zip')

// 提示:
// fs.stat(path, callback)  异步
// fs.statSync(path)   同步 
  1. electron获取上传文件的本地真实路径
const { remote } = require('electron')
const result = await remote.dialog.showOpenDialog({
        properties: ['openFile']
})

console.log(result.filePaths)
  1. nodejs获取一个文件夹下所有的文件
const fs = require('fs')
// 同步
try {
    const files = fs.readdirSync('src/views/node/file');
    files.forEach(file => {
        console.log(file);
    });
 
} catch (err) {
    console.log(err);
}
// 异步
fs.readdir('src/views/node/file', (err, files) => {
    if (err) {
        throw err;
    }
    files.forEach(file => {
        console.log(file);
    });
})

提示:
fs.readdir(path, callback)  // 异步
fs.readdirSync(path)   // 同步

  1. electron打开dialog框限制文件类型
const { remote } = require('electron')
 async handleOpen () {
      const result = await remote.dialog.showOpenDialog({
        filters: [
          {
            name: 'img',
            extensions: ['jpg'] // 只允许 jpg  格式的文件
          }
        ],
      })

      console.log(result, 'result')
    }
  1. electron打开本地指定的文件路径
const shell = require('electron').shell;
handleOpen () {
      shell.showItemInFolder('C:\\Users\\admin\\Desktop\\spacework\\images\\profile.jpg')
 }

你可能感兴趣的:(node.js&electron 工作笔记)