custom-app
Version:
ITIMS��Ʒ�鿪��ר��React���,�Dz��ý��ּ�dhcc-app���������
67 lines (59 loc) • 2.15 kB
JavaScript
var fs = require('fs')
const util = require('../../util/util')
const spinner = require('../../util/spinner');
const inquirer = require('inquirer');
const path = require('path');
function publish (projectName, options) {
const cwd = options.cwd || process.cwd()
const reactAppPath = util.getReactAppPath(cwd);
const inCurrent = projectName === '.'
const targetDir = inCurrent ? reactAppPath : path.join(reactAppPath, 'src', projectName)
let serverConf = require('../server/conf.js')
try {
serverConf = serverConf.hasOwnProperty('server') ? JSON.parse(serverConf.server) : {}
} catch (error) {
serverConf = {}
}
if (!serverConf.hasOwnProperty('host')) {
delete require.cache[require.resolve('../server/conf.js')]
inquirer.prompt([{
type: 'input',
message: '请输入host name(ip):',
name: 'host',
// validate: function (val) {
// var reg = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/
// console.log(reg.test(val))
// if (reg.test(val)) { // 校验位数
// return val;
// }
// return "请输入正确的ip地址";
// }
}, {
type: "input", // 密码为密文输入
message: "请输入端口",
name: "port",
default: 22
}, {
type: "input", // 密码为密文输入
message: "请输入用户名:",
name: "username"
}, {
type: "password", // 密码为密文输入
message: "请输入密码:",
name: "password"
}, {
type: "input", // 密码为密文输入
message: "请输入上传文件在服务器的输出路径:",
name: "path"
}
]).then(function (answers) {
fs.writeFileSync(require.resolve('../server/conf.js'), `exports.server = '${JSON.stringify(answers)}'`)
require('./publish-build')(projectName, serverConf)
})
} else {
require('./publish-build')(projectName, serverConf)
}
}
module.exports = (...args) => {
publish(...args)
}