neo-cmp-cli 1.6.0-beta.10 → 1.6.0-beta.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "neo-cmp-cli",
3
- "version": "1.6.0-beta.10",
3
+ "version": "1.6.0-beta.11",
4
4
  "description": "前端脚手架:自定义组件开发工具,支持react 和 vue2.0技术栈。",
5
5
  "keywords": [
6
6
  "neo-cli",
@@ -161,6 +161,7 @@ class NeoService {
161
161
  spinner.stop();
162
162
  return access_token;
163
163
  } catch (error) {
164
+ spinner.fail('获取 token 失败');
164
165
  console.error('\n获取 token 失败:', error.message);
165
166
  console.error('\ntoken 授权地址:', tokenUrl);
166
167
  console.error('\ntoken 请求参数:', formData);
@@ -194,9 +195,14 @@ class NeoService {
194
195
  return await this.getToken();
195
196
  } else if (this.isTokenExpired()) {
196
197
  const spinner = ora('token 已过期,正在刷新...').start();
197
- const token = await this.refreshToken();
198
- spinner.succeed('token 刷新成功。');
199
- return token;
198
+ try {
199
+ const token = await this.refreshToken();
200
+ spinner.succeed('token 刷新成功。');
201
+ return token;
202
+ } catch (error) {
203
+ spinner.fail('token 刷新失败。');
204
+ throw error;
205
+ }
200
206
  }
201
207
  return this.tokenCache.token;
202
208
  }
@@ -31,14 +31,15 @@ module.exports = async function (cmpZipUrl, cmpName, componentBaseDir = './src/c
31
31
  // 创建临时目录
32
32
  const tempDir = path.join(process.cwd(), '.neo-cli', 'zip-source');
33
33
 
34
+ const spinner = ora(`${consoleTag}正在下载组件源码...`).start();
35
+
34
36
  // 下载源码文件并解析到 src/components 目录下
35
37
  try {
36
38
  await fs.ensureDir(tempDir); // 如果目录不存在,会自动创建(包括所有必要的父目录)
37
-
38
- // 下载 zip 文件
39
- const spinner = ora(`${consoleTag}正在下载组件源码...`).start();
39
+
40
40
  const zipFilePath = path.join(tempDir, `${finalCmpName}.zip`);
41
-
41
+
42
+ // 下载 zip 文件
42
43
  const response = await axios({
43
44
  url: cmpZipUrl,
44
45
  method: 'GET',
@@ -68,9 +69,13 @@ module.exports = async function (cmpZipUrl, cmpName, componentBaseDir = './src/c
68
69
  await fs.ensureDir(targetComponentsDir);
69
70
 
70
71
  // 复制 src/components 目录下的所有内容到目标目录
71
- await fs
72
- .copy(cmpSourcePath, targetComponentsDir)
73
- .catch((err) => spinner.fail(`${consoleTag}自定义组件模板下载失败:${err.message || err}`));
72
+ try {
73
+ await fs.copy(cmpSourcePath, targetComponentsDir);
74
+ } catch (err) {
75
+ spinner.fail(`${consoleTag}自定义组件模板下载失败:${err.message || err}`);
76
+ await fs.remove(tempDir);
77
+ return false;
78
+ }
74
79
 
75
80
  // 清理临时目录
76
81
  await fs.remove(tempDir);