diff --git a/packages/taro-cli/src/create/page.ts b/packages/taro-cli/src/create/page.ts index dc29c35c4469..17bec4844fe2 100644 --- a/packages/taro-cli/src/create/page.ts +++ b/packages/taro-cli/src/create/page.ts @@ -162,17 +162,19 @@ export default class Page extends Creator { let templateSource = DEFAULT_TEMPLATE_SRC if (!homedir) chalk.yellow('找不到用户根目录,使用默认模版源!') - const taroConfigPath = path.join(homedir, TARO_CONFIG_FOLDER) - const taroConfig = path.join(taroConfigPath, TARO_BASE_CONFIG) - - if (fs.existsSync(taroConfig)) { - const config = await fs.readJSON(taroConfig) - templateSource = config && config.templateSource ? config.templateSource : DEFAULT_TEMPLATE_SRC + if (this.conf.templateSource) { + templateSource = this.conf.templateSource } else { - templateSource = this.conf.templateSource || DEFAULT_TEMPLATE_SRC - - await fs.createFile(taroConfig) - await fs.writeJSON(taroConfig, { templateSource }) + const taroConfigPath = path.join(homedir, TARO_CONFIG_FOLDER) + const taroConfig = path.join(taroConfigPath, TARO_BASE_CONFIG) + if (fs.existsSync(taroConfig)) { + const config = await fs.readJSON(taroConfig) + templateSource = config && config.templateSource ? config.templateSource : DEFAULT_TEMPLATE_SRC + } else { + await fs.createFile(taroConfig) + await fs.writeJSON(taroConfig, { templateSource }) + templateSource = DEFAULT_TEMPLATE_SRC + } } // 从模板源下载模板 diff --git a/packages/taro-cli/src/presets/commands/create.ts b/packages/taro-cli/src/presets/commands/create.ts index 74822146480a..8163a9dec76d 100644 --- a/packages/taro-cli/src/presets/commands/create.ts +++ b/packages/taro-cli/src/presets/commands/create.ts @@ -43,6 +43,9 @@ export default (ctx: IPluginContext) => { const description = options.description || '' const afterCreate = options.afterCreate const templateSource = options.templateSource + const framework = options.framework + const css = options.css + const typescript = options.typescript const clone = options.clone const { chalk } = ctx.helper const { appPath } = ctx.paths @@ -57,6 +60,9 @@ export default (ctx: IPluginContext) => { const page = new Page({ clone, subPkg: options.subpkg, + framework, + css, + typescript, pageDir: options.dir, pageName: name, projectDir: appPath,