mirror of
https://github.com/youzan/vant.git
synced 2025-10-20 18:54:24 +00:00
chore(cli): extract create-vant-cli-app package
This commit is contained in:
@@ -5,8 +5,8 @@ import WebpackDevServer from 'webpack-dev-server';
|
||||
import { get } from 'lodash';
|
||||
import { getPort } from 'portfinder';
|
||||
import { GREEN } from '../common/constant';
|
||||
import { siteDevConfig } from '../config/webpack.site.dev';
|
||||
import { sitePrdConfig } from '../config/webpack.site.prd';
|
||||
import { getSiteDevConfig } from '../config/webpack.site.dev';
|
||||
import { getSitePrdConfig } from '../config/webpack.site.prd';
|
||||
|
||||
function logServerInfo(port: number) {
|
||||
const local = `http://localhost:${port}/`;
|
||||
@@ -17,16 +17,16 @@ function logServerInfo(port: number) {
|
||||
console.log(` ${chalk.bold('Network')}: ${chalk.hex(GREEN)(network)}`);
|
||||
}
|
||||
|
||||
function runDevServer(port: number) {
|
||||
const server = new WebpackDevServer(
|
||||
webpack(siteDevConfig),
|
||||
siteDevConfig.devServer
|
||||
);
|
||||
function runDevServer(
|
||||
port: number,
|
||||
config: ReturnType<typeof getSiteDevConfig>
|
||||
) {
|
||||
const server = new WebpackDevServer(webpack(config), config.devServer);
|
||||
|
||||
// this is a hack to disable wds status log
|
||||
(server as any).showStatus = function() {};
|
||||
|
||||
const host = get(siteDevConfig.devServer, 'host', 'localhost');
|
||||
const host = get(config.devServer, 'host', 'localhost');
|
||||
server.listen(port, host, (err?: Error) => {
|
||||
if (err) {
|
||||
console.log(err);
|
||||
@@ -35,9 +35,11 @@ function runDevServer(port: number) {
|
||||
}
|
||||
|
||||
function watch() {
|
||||
const config = getSiteDevConfig();
|
||||
|
||||
getPort(
|
||||
{
|
||||
port: siteDevConfig.devServer!.port
|
||||
port: config.devServer!.port
|
||||
},
|
||||
(err, port) => {
|
||||
if (err) {
|
||||
@@ -46,14 +48,16 @@ function watch() {
|
||||
}
|
||||
|
||||
logServerInfo(port);
|
||||
runDevServer(port);
|
||||
runDevServer(port, config);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
function build() {
|
||||
return new Promise((resolve, reject) => {
|
||||
webpack(sitePrdConfig, (err, stats) => {
|
||||
const config = getSitePrdConfig();
|
||||
|
||||
webpack(config, (err, stats) => {
|
||||
if (err || stats.hasErrors()) {
|
||||
reject();
|
||||
} else {
|
||||
|
Reference in New Issue
Block a user