fix: resolve React 19 and Next.js 16 HMR compatibility issue
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo "🔧 Next.js 开发服务器问题修复工具"
|
||||
echo "=================================="
|
||||
echo ""
|
||||
|
||||
# 颜色定义
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
RED='\033[0;31m'
|
||||
NC='\033[0m' # No Color
|
||||
|
||||
# 检查是否有进程在3000端口
|
||||
if lsof -ti:3000 > /dev/null 2>&1; then
|
||||
echo -e "${YELLOW}⚠️ 检测到端口3000上有进程运行${NC}"
|
||||
echo "正在停止进程..."
|
||||
lsof -ti:3000 | xargs kill -9 2>/dev/null
|
||||
echo -e "${GREEN}✅ 进程已停止${NC}"
|
||||
sleep 2
|
||||
else
|
||||
echo -e "${GREEN}✅ 端口3000未被占用${NC}"
|
||||
fi
|
||||
|
||||
# 清除缓存
|
||||
echo ""
|
||||
echo "清除Next.js缓存..."
|
||||
|
||||
if [ -d ".next" ]; then
|
||||
echo "删除 .next 目录..."
|
||||
rm -rf .next
|
||||
echo -e "${GREEN}✅ .next 目录已清除${NC}"
|
||||
else
|
||||
echo -e "${GREEN}✅ .next 目录不存在,无需清除${NC}"
|
||||
fi
|
||||
|
||||
# 清除node_modules缓存(可选)
|
||||
if [ "$1" == "--deep" ]; then
|
||||
echo ""
|
||||
echo "执行深度清理..."
|
||||
|
||||
if [ -d "node_modules/.cache" ]; then
|
||||
echo "删除 node_modules/.cache 目录..."
|
||||
rm -rf node_modules/.cache
|
||||
echo -e "${GREEN}✅ node_modules/.cache 已清除${NC}"
|
||||
fi
|
||||
|
||||
if [ -d ".turbo" ]; then
|
||||
echo "删除 .turbo 目录..."
|
||||
rm -rf .turbo
|
||||
echo -e "${GREEN}✅ .turbo 已清除${NC}"
|
||||
fi
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo -e "${GREEN}✅ 修复完成!${NC}"
|
||||
echo ""
|
||||
echo "现在可以运行开发服务器:"
|
||||
echo -e "${YELLOW}npm run dev${NC}"
|
||||
echo ""
|
||||
echo "或者使用以下命令:"
|
||||
echo -e "${YELLOW}npm run dev${NC} - 启动开发服务器"
|
||||
echo -e "${YELLOW}npm run build${NC} - 构建生产版本"
|
||||
echo ""
|
||||
echo "提示:如果问题仍然存在,尝试使用 --deep 参数进行深度清理:"
|
||||
echo -e "${YELLOW}./scripts/fix-dev-server.sh --deep${NC}"
|
||||
Reference in New Issue
Block a user