diff --git a/packages/vant-cli/src/commands/changelog.ts b/packages/vant-cli/src/commands/changelog.ts
index 6b4b3612b..da9a1cb44 100644
--- a/packages/vant-cli/src/commands/changelog.ts
+++ b/packages/vant-cli/src/commands/changelog.ts
@@ -46,25 +46,28 @@ function transform(item: any) {
   return item;
 }
 
-export function changelog() {
+export async function changelog() {
   logger.start('Generating changelog...');
 
-  conventionalChangelog(
-    {
-      preset: 'angular'
-    },
-    null,
-    null,
-    null,
-    {
-      mainTemplate,
-      headerPartial,
-      commitPartial,
-      transform
-    }
-  )
-    .pipe(createWriteStream(DIST_FILE))
-    .on('close', () => {
-      logger.success(`Generated changelog at ${DIST_FILE}`);
-    });
+  return new Promise(resolve => {
+    conventionalChangelog(
+      {
+        preset: 'angular'
+      },
+      null,
+      null,
+      null,
+      {
+        mainTemplate,
+        headerPartial,
+        commitPartial,
+        transform
+      }
+    )
+      .pipe(createWriteStream(DIST_FILE))
+      .on('close', () => {
+        logger.success(`Generated changelog at ${DIST_FILE}`);
+        resolve();
+      });
+  });
 }
diff --git a/packages/vant-cli/src/compiler/vant-cli-release-plugin.ts b/packages/vant-cli/src/compiler/vant-cli-release-plugin.ts
index 6992b1907..dd841964c 100644
--- a/packages/vant-cli/src/compiler/vant-cli-release-plugin.ts
+++ b/packages/vant-cli/src/compiler/vant-cli-release-plugin.ts
@@ -9,7 +9,7 @@ class VantCliReleasePlugin extends releaseIt.Plugin {
     console.log('');
 
     await build();
-    changelog();
+    await changelog();
   }
 }