117 lines
2.5 KiB
Bash
117 lines
2.5 KiB
Bash
#!/bin/bash
|
|
|
|
echo "=================================="
|
|
echo " 项目启动诊断工具"
|
|
echo "=================================="
|
|
echo ""
|
|
|
|
# 检查 Node.js
|
|
echo "1. 检查 Node.js 环境..."
|
|
if command -v node &> /dev/null; then
|
|
NODE_VERSION=$(node -v)
|
|
echo " ✓ Node.js 已安装: $NODE_VERSION"
|
|
else
|
|
echo " ✗ Node.js 未安装"
|
|
echo " 请从 https://nodejs.org/ 下载安装"
|
|
exit 1
|
|
fi
|
|
|
|
# 检查 npm
|
|
echo ""
|
|
echo "2. 检查 npm..."
|
|
if command -v npm &> /dev/null; then
|
|
NPM_VERSION=$(npm -v)
|
|
echo " ✓ npm 已安装: v$NPM_VERSION"
|
|
else
|
|
echo " ✗ npm 未安装"
|
|
exit 1
|
|
fi
|
|
|
|
# 检查 node_modules
|
|
echo ""
|
|
echo "3. 检查依赖安装..."
|
|
if [ -d "node_modules" ]; then
|
|
echo " ✓ node_modules 目录存在"
|
|
|
|
# 检查关键依赖
|
|
if [ -d "node_modules/@dcloudio" ]; then
|
|
echo " ✓ uni-app 依赖已安装"
|
|
else
|
|
echo " ✗ uni-app 依赖缺失,正在安装..."
|
|
npm install
|
|
fi
|
|
else
|
|
echo " ✗ node_modules 目录不存在"
|
|
echo " 正在安装依赖..."
|
|
npm install
|
|
fi
|
|
|
|
# 检查关键文件
|
|
echo ""
|
|
echo "4. 检查项目文件..."
|
|
|
|
FILES=(
|
|
"index.html"
|
|
"src/main.ts"
|
|
"src/App.vue"
|
|
"src/pages.json"
|
|
"src/manifest.json"
|
|
"vite.config.ts"
|
|
"package.json"
|
|
)
|
|
|
|
for file in "${FILES[@]}"; do
|
|
if [ -f "$file" ]; then
|
|
echo " ✓ $file"
|
|
else
|
|
echo " ✗ $file 缺失"
|
|
fi
|
|
done
|
|
|
|
# 检查 Mock 数据
|
|
echo ""
|
|
echo "5. 检查 Mock 数据..."
|
|
if [ -f "src/mock/index.ts" ]; then
|
|
echo " ✓ Mock 数据文件存在"
|
|
else
|
|
echo " ✗ Mock 数据文件缺失"
|
|
fi
|
|
|
|
# 检查 types
|
|
echo ""
|
|
echo "6. 检查类型定义..."
|
|
if [ -d "src/types" ]; then
|
|
echo " ✓ types 目录存在"
|
|
TYPE_FILES=$(ls src/types/*.ts 2>/dev/null | wc -l)
|
|
echo " ✓ 找到 $TYPE_FILES 个类型定义文件"
|
|
else
|
|
echo " ✗ types 目录不存在"
|
|
fi
|
|
|
|
# 检查端口占用
|
|
echo ""
|
|
echo "7. 检查端口占用..."
|
|
if command -v lsof &> /dev/null; then
|
|
PORT_5173=$(lsof -i :5173 2>/dev/null | grep LISTEN)
|
|
if [ -n "$PORT_5173" ]; then
|
|
echo " ⚠ 端口 5173 已被占用"
|
|
echo " $PORT_5173"
|
|
else
|
|
echo " ✓ 端口 5173 可用"
|
|
fi
|
|
fi
|
|
|
|
echo ""
|
|
echo "=================================="
|
|
echo " 诊断完成!"
|
|
echo "=================================="
|
|
echo ""
|
|
echo "现在可以运行项目:"
|
|
echo ""
|
|
echo " 微信小程序: npm run dev:mp-weixin"
|
|
echo " H5 浏览器: npm run dev:h5"
|
|
echo ""
|
|
echo "推荐先用 H5 模式快速预览:"
|
|
echo " npm run dev:h5"
|
|
echo ""
|