dolphin-leaflet
Version:
leaflet for dmap
53 lines (51 loc) • 1.24 kB
JavaScript
var fs = require('fs');
var path = require('path');
var cwd = process.cwd(); // 当前执行路径
//
var stat = fs.stat;
var copy = function (src, dst) {
fs.readdir(src, function (err, paths) {
if (err) {
throw err;
}
paths.forEach(function (path) {
var _src = src + '/' + path;
var _dst = dst + '/' + path;
var readable;
var writable;
stat(_src, function (err, st) {
if (err) {
throw err;
}
if (st.isFile()) {
readable = fs.createReadStream(_src);
writable = fs.createWriteStream(_dst);
readable.pipe(writable);
} else if (st.isDirectory()) {
doCopy(_src, _dst);
}
});
});
});
}
var mkdirs = function (dirpath, callback) {
fs.exists(dirpath, function (exists) {
if (exists) {
callback(dirpath);
} else {
mkdirs(path.dirname(dirpath), function () {
fs.mkdir(dirpath, callback);
});
}
});
};
var doCopy = function (src, dst) {
mkdirs(dst, function () {
copy(src, dst)
})
}
//
var src = path.join(cwd, 'dist');
var dst = path.join(cwd, '../../public/dmap/leaflet');
//
doCopy(src, dst);