UNPKG

wsemi

Version:

A support package for web developer.

58 lines (53 loc) 1.71 kB
import fs from 'fs' import fsDeleteFileSafeCore from './fsDeleteFileSafeCore.mjs' /** * 後端nodejs刪除檔案,支援失敗重試機制 * * Unit Test: {@link https://github.com/yuda-lyu/wsemi/blob/master/test/fsDeleteFileSafe.test.mjs Github} * @memberOf wsemi * @param {String} pah 輸入路徑字串 * @param {Object} [opt={}] 輸入設定物件,預設{} * @param {Object} [opt.fs=null] 輸入設定物件,預設null * @param {Integer} [opt.numRetry=5] 輸入嘗試刪除次數整數,預設5 * @returns {Promise} 回傳Promise,resolve回傳成功訊息,reject回傳錯誤訊息 * @example * need test in nodejs. * * let test = async () => { * * let ms = [] * * let fdt = './_test_fsDeleteFileSafe' * * fsCreateFolder(fdt) //創建臨時任務資料夾 * * let fn = 'abc.txt' * let fp = `${fdt}/${fn}` * * fsCreateFile(fp, 'abc', { encoding: 'utf8' }) * * let b1 = fsIsFile(fp) * console.log('fsDeleteFileSafe(before)', b1) * ms.push({ 'fsDeleteFileSafe(before)': b1 }) * * await fsDeleteFileSafe(fp) * * let b2 = fsIsFile(fp) * console.log('fsDeleteFileSafe(after)', b2) * ms.push({ 'fsDeleteFileSafe(after)': b2 }) * * fsDeleteFolder(fdt) //刪除臨時任務資料夾 * * console.log('ms', ms) * return ms * } * test() * // fsDeleteFileSafe(before) true * // fsDeleteFileSafe(after) false * // ms [ { 'fsDeleteFileSafe(before)': true }, { 'fsDeleteFileSafe(after)': false } ] * */ async function fsDeleteFileSafe(pah, opt = {}) { return await fsDeleteFileSafeCore(pah, { fs, ...opt }) } export default fsDeleteFileSafe