格式化時間的方法
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();
});
});
};