代码拉取完成,页面将自动刷新
同步操作将从 feng3d/examples 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
'use strict';
var process = require('child_process');
var fs = require("fs");
var path = require("path");
// watchcopyDir("../feng3d/out", "libs");
/**
* Watch for changes in TypeScript
*/
watchProject([
__dirname,
]);
function watchcopyDir(srcdir, destdir)
{
var realsrcdir = path.join(__dirname, srcdir);
var realdestdir = path.join(__dirname, destdir);
fs.readdir(realsrcdir, (err, files) =>
{
if (err) return;
files.forEach(element =>
{
var src = `${realsrcdir}/${element}`;
var dest = `${realdestdir}/${element}`;
watchCopyFile(src, dest);
});
});
function watchCopyFile(src, dest)
{
if (fs.existsSync(src))
{
fs.watchFile(src, () =>
{
copyfile();
});
copyfile();
}
function copyfile()
{
var str = fs.readFileSync(src, "utf8");
if (src.indexOf(".js.map") != -1)
{
str = str.replace(`"sourceRoot":""`, `"sourceRoot":"../${srcdir}/"`);
}
fs.writeFileSync(dest, str, "utf8");
}
}
}
function watchProject(project)
{
if (project instanceof Array)
{
for (var i = 0; i < project.length; i++)
{
watchProject(project[i]);
}
return;
}
var childProcess = process.exec('tsc -w -p ' + project, function (error, stdout, stderr)
{
if (error !== null)
{
console.log('exec error: ' + error);
}
console.log(stdout)
console.log(stderr)
});
childProcess.stdout.on('data', function (data)
{
data = data.trim();
if (data.length > 10) console.log(data);
});
childProcess.stderr.on('data', function (data)
{
data = data.trim();
console.error(data);
});
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。