js輪子

格式化時間的方法

dateFormat (fmt, date) {
      let ret
      const option = {
        'Y+': date.getFullYear().toString(), // 年
        'm+': (date.getMonth() + 1).toString(), // 月
        'd+': date.getDate().toString(), // 日
        'H+': date.getHours().toString(), // 時
        'M+': date.getMinutes().toString(), // 分
        'S+': date.getSeconds().toString() // 秒
      }
      for (const k in option) {
        ret = new RegExp('(' + k + ')').exec(fmt)
        if (ret) {
          fmt = fmt.replace(ret[1], (ret[1].length === 1) ? (option[k]) : (option[k].padStart(ret[1].length, '0')))
        }
      }
      return fmt
    }
// 使用方式
dateFormat('YYYY-mm-dd HH:MM', new Date())

讀任何文件轉成base64
需要安裝mime-types

const mineType = require("mime-types");
window.fileToBase64 = filePath => {
  let data = fs.readFileSync(filePath);
  data = new Buffer(data).toString("base64");
  let base64 = "data:" + mineType.lookup(filePath) + ";base64," + data;
  return base64;
};

文件選擇

const { remote } = require("electron");
const { dialog } = require("electron").remote;
window.selectFile = () => {
  return new Promise((resolve, reject) => {
    utools.hideMainWindow();
    dialog
      .showOpenDialog({
        title: "請選擇數據文件",
        defaultPath: utools.getPath("downloads"),
        buttonLabel: "導入",
        properties: ["openFile"],
        filters: [{ name: "mp3", extensions: ["mp3"] }],
      })
      .then((res) => {
        console.log(res);
        if (res.canceled || res.filePaths.length === 0) {
          resolve([]);
        }
        utools.showMainWindow();
        resolve(res.filePaths);
      })
      .catch((err) => {
        console.log(err);
        utools.showMainWindow();
      });
  });
};
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章