create-vite-vue 1.5.2 → 1.5.4

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/README.md CHANGED
@@ -145,6 +145,34 @@ npm run dev
145
145
 
146
146
  ---
147
147
 
148
+ ## 🟢 Node.js 版本管理(.nvmrc)
149
+
150
+ 项目根目录中包含一个 **`.nvmrc`** 文件,用于指定当前项目推荐使用的**Node.js 版本**。这样可以保证不同开发者或不同机器运行项目时使用一致的 Node环境,避免依赖问题。
151
+
152
+ ### 使用 nvm 切换 Node 版本
153
+
154
+ 如果你安装了 **nvm(Node Version Manager)**,进入项目目录后执行:
155
+
156
+ ``` bash
157
+ nvm use
158
+ ```
159
+
160
+ nvm 会自动读取 `.nvmrc` 文件中的 Node 版本并切换。
161
+
162
+ ### Windows 可能出现的问题
163
+
164
+ 在 **Windows PowerShell** 中,`nvm use` 有时不会自动读取`.nvmrc`,可能会报错或无法切换版本。
165
+
166
+ 如果出现这种情况,可以执行:
167
+
168
+ ``` powershell
169
+ nvm use $(Get-Content .nvmrc)
170
+ ```
171
+
172
+ 该命令会读取 `.nvmrc` 文件内容并手动切换 Node 版本。
173
+
174
+ ---
175
+
148
176
  ## 🔧 常见需要调整的地方(具体文件示例)
149
177
 
150
178
  ### 1️⃣ 接口请求地址
package/bin/index.js CHANGED
@@ -242,6 +242,11 @@ for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
242
242
  if(extraPlugins.includes('vueuse')) optionalDeps['@vueuse/core'] = '^14.2.1'
243
243
  if(extraPlugins.includes('dayjs')) optionalDeps['dayjs'] = '^1.11.19'
244
244
  if(extraPlugins.includes('lodash')) optionalDeps['lodash'] = '^4.17.23'
245
+ if(extraPlugins.includes('tailwind')) {
246
+ optionalDeps['tailwindcss'] = '^4.2.1'
247
+ optionalDeps['@tailwindcss/postcss'] = '^4.2.1'
248
+ optionalDeps['postcss'] = '^8.5.8'
249
+ }
245
250
  if(autoRoute) optionalDeps['vite-plugin-pages'] = '^0.33.3'
246
251
 
247
252
  let depsStr = ''
@@ -360,19 +365,63 @@ export default createRouter({
360
365
 
361
366
  // 1️⃣0️⃣ 安装依赖
362
367
  console.log('📦 安装依赖中...')
363
- let installCmd = 'npm install'
364
368
 
365
- if(extraPlugins.includes('tailwind')) {
366
- installCmd += ' tailwindcss @tailwindcss/postcss postcss'
369
+ const pkgManager = detectPackageManager()
370
+
371
+ let installCmd = ''
372
+
373
+ if(pkgManager === 'pnpm') {
374
+ installCmd = 'pnpm install'
375
+ } else if(pkgManager === 'yarn') {
376
+ installCmd = 'yarn'
377
+ } else {
378
+ installCmd = 'npm install'
367
379
  }
368
380
 
369
381
  execSync(installCmd, { cwd: targetDir, stdio: 'inherit' })
370
382
 
383
+ const pkgCommands = {
384
+ npm: {
385
+ install: 'npm install',
386
+ dev: 'npm run dev'
387
+ },
388
+ yarn: {
389
+ install: 'yarn',
390
+ dev: 'yarn dev'
391
+ },
392
+ pnpm: {
393
+ install: 'pnpm install',
394
+ dev: 'pnpm dev'
395
+ },
396
+ bun: {
397
+ install: 'bun install',
398
+ dev: 'bun run dev'
399
+ }
400
+ }
401
+
371
402
  // 1️⃣1️⃣ 运行 dev
372
403
  if(runDev) {
373
404
  console.log('🚀 启动开发服务器...')
374
- execSync('npm run dev', { cwd: targetDir, stdio: 'inherit' })
405
+ execSync(pkgCommands[pkgManager].dev, {
406
+ cwd: targetDir,
407
+ stdio: 'inherit'
408
+ })
375
409
  } else {
376
- console.log(`\n✅ 项目创建完成\n👉 cd ${projectName}\n👉 npm run dev\n`)
410
+ console.log(`\n✅ 项目创建完成`)
411
+ console.log(`👉 cd ${projectName}`)
412
+ console.log(`👉 ${pkgCommands[pkgManager].dev}\n`)
377
413
  }
378
- })()
414
+ })()
415
+
416
+ function detectPackageManager () {
417
+ const userAgent = process.env.npm_config_user_agent || ''
418
+
419
+ if(userAgent.startsWith('pnpm')) return 'pnpm'
420
+ if(userAgent.startsWith('yarn')) return 'yarn'
421
+ if(userAgent.startsWith('npm')) return 'npm'
422
+
423
+ if(fs.existsSync('pnpm-lock.yaml')) return 'pnpm'
424
+ if(fs.existsSync('yarn.lock')) return 'yarn'
425
+
426
+ return 'npm'
427
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-vite-vue",
3
- "version": "1.5.2",
3
+ "version": "1.5.4",
4
4
  "description": "基于Vite+Vue3创建基础项目模板",
5
5
  "main": "index.js",
6
6
  "author": "YwaiX",
@@ -0,0 +1 @@
1
+ v22.19.0
@@ -145,6 +145,34 @@ npm run dev
145
145
 
146
146
  ---
147
147
 
148
+ ## 🟢 Node.js 版本管理(.nvmrc)
149
+
150
+ 项目根目录中包含一个 **`.nvmrc`** 文件,用于指定当前项目推荐使用的**Node.js 版本**。这样可以保证不同开发者或不同机器运行项目时使用一致的 Node环境,避免依赖问题。
151
+
152
+ ### 使用 nvm 切换 Node 版本
153
+
154
+ 如果你安装了 **nvm(Node Version Manager)**,进入项目目录后执行:
155
+
156
+ ``` bash
157
+ nvm use
158
+ ```
159
+
160
+ nvm 会自动读取 `.nvmrc` 文件中的 Node 版本并切换。
161
+
162
+ ### Windows 可能出现的问题
163
+
164
+ 在 **Windows PowerShell** 中,`nvm use` 有时不会自动读取`.nvmrc`,可能会报错或无法切换版本。
165
+
166
+ 如果出现这种情况,可以执行:
167
+
168
+ ``` powershell
169
+ nvm use $(Get-Content .nvmrc)
170
+ ```
171
+
172
+ 该命令会读取 `.nvmrc` 文件内容并手动切换 Node 版本。
173
+
174
+ ---
175
+
148
176
  ## 🔧 常见需要调整的地方(具体文件示例)
149
177
 
150
178
  ### 1️⃣ 接口请求地址
@@ -0,0 +1 @@
1
+ v22.19.0
@@ -145,6 +145,34 @@ npm run dev
145
145
 
146
146
  ---
147
147
 
148
+ ## 🟢 Node.js 版本管理(.nvmrc)
149
+
150
+ 项目根目录中包含一个 **`.nvmrc`** 文件,用于指定当前项目推荐使用的**Node.js 版本**。这样可以保证不同开发者或不同机器运行项目时使用一致的 Node环境,避免依赖问题。
151
+
152
+ ### 使用 nvm 切换 Node 版本
153
+
154
+ 如果你安装了 **nvm(Node Version Manager)**,进入项目目录后执行:
155
+
156
+ ``` bash
157
+ nvm use
158
+ ```
159
+
160
+ nvm 会自动读取 `.nvmrc` 文件中的 Node 版本并切换。
161
+
162
+ ### Windows 可能出现的问题
163
+
164
+ 在 **Windows PowerShell** 中,`nvm use` 有时不会自动读取`.nvmrc`,可能会报错或无法切换版本。
165
+
166
+ 如果出现这种情况,可以执行:
167
+
168
+ ``` powershell
169
+ nvm use $(Get-Content .nvmrc)
170
+ ```
171
+
172
+ 该命令会读取 `.nvmrc` 文件内容并手动切换 Node 版本。
173
+
174
+ ---
175
+
148
176
  ## 🔧 常见需要调整的地方(具体文件示例)
149
177
 
150
178
  ### 1️⃣ 接口请求地址