From 69804ea5950df6a726a90f51e094dbef6daef694 Mon Sep 17 00:00:00 2001 From: whwyy Date: Wed, 24 Jun 2026 20:37:13 +0800 Subject: [PATCH] eee --- src/Router.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Router.php b/src/Router.php index c06af18..89074b1 100644 --- a/src/Router.php +++ b/src/Router.php @@ -211,11 +211,13 @@ class Router { $coordinator = CoordinatorManager::utility(Coordinator::WORKER_START); $container = Kiri::getDi(); - $container->get(DataGrip::class)->reset(static::$type); $changedFiles = $container->get(HotReloadState::class)->consume(); - // Worker 首次启动(无变更文件 + Master 已完成扫描):仅加载路由,跳过全量 app 扫描 + // Worker 首次启动(无变更文件 + Master 已完成扫描): + // RouterCollector 已由 Master 填充(含路由文件路由 + 注解路由),Worker 通过 fork 继承 + // 重新 include 路由文件以更新 Router::get/post 等显式注册的路由(同 key 覆盖不产生重复) + // 注解路由(#[Route]/#[Get]/#[Post]等)由 Master 注入保留,无需重新扫描 app 目录 if (empty($changedFiles) && self::$initialScanDone) { $this->read_dir_file(APP_PATH . 'routes'); $this->reset($container); @@ -226,6 +228,8 @@ class Router // 标记首次扫描完成(Master 首次启动或 Worker 热重载时执行到此) self::$initialScanDone = true; + $container->get(DataGrip::class)->reset(static::$type); + $scanner = $container->get(Kiri\Di\Scanner::class); $artifactState = $container->get(RouteArtifactState::class); $scanConfig = array_merge(