const fs = require("fs");
class Replace {
constructor(dir) {
Object.assign(this, dir);
const Css = fs.readFileSync(this.Democss, "utf-8");
const Html = fs.readFileSync(this.Demohtml, "utf-8");
const Js = fs.readFileSync(this.Demojs, "utf-8");
const str = Html.replace(" <!-- 替换 -->", `<style>${Css}</style`)
.replace(" <!-- 替换js -->", `<script>${Js}</script>`);
fs.writeFileSync("src/index.html", str)
}
}
new Replace({
Democss: "src/demo.css",
Demohtml: "src/demo.html",
Demojs: "src/demo.js",
})
const fs = require("fs");
const path = require("path");
const DirToJosn = (dir) => {
const info = fs.statSync(dir);
if (info.isFile()) {
return {
name: path.basename(dir),
pathname: dir,
type: "file",
size: fs.statSync(dir).size,
concent: fs.readFileSync(dir, "utf-8")
}
} else {
return {
name: path.basename(dir),
pathname: dir,
type: "dir",
children: fs.readdirSync(dir).map(item => {
const pathReal = path.join(dir, item);
return DirToJosn(pathReal)
})
}
}
}
const obj = DirToJosn("node_modules");
fs.writeFileSync("main.json", JSON.stringify(obj));
const fs = require("fs");
const JsonToDir = (data) => {
if (data.type === "file") {
fs.writeFileSync(data.pathname, data.concent);
} else {
fs.mkdirSync(data.pathname);
data.children.forEach(item => {
JsonToDir(item)
})
}
}
const data = JSON.parse(fs.readFileSync("data.json"));
JsonToDir(data)