laravel项目可以正常运行,但是VS报错其路由Undefined type 'Route'.intelephense(1009)

新建好的项目,在别人电脑的VS中运行,路由正常,但是我电脑每次打开都报错,可是我没有开始写任何代码,。

img


Undefined type 'Route'.intelephense(1009)
没有可用的快速修复

img

原因

这些类在工作区中不存在。Laravel 在运行时创建它们。因此,它们被报告为未定义。

解决方法

解决方案是提供存根定义https://github.com/barryvdh/laravel-ide-helper或关闭诊断 ( intelephense.diagnostics.undefinedTypes)。

参考链接:

如果上述方法不起作用

尝试降级PHP版本或者其他操作,具体的方法可查看这个:

里面有对于这个问题的多个解决方法。


如有问题及时沟通

参考

未定义类型“Route”?
VSCode 配置
可以把相关类库目录及 vendor 目录添加进来
设置>Intelephense>Exvironment:Include Paths>添加依赖目录

以下内容是百度odp框架内部类库,可以通过本脚本生成空对象和方法,解决报错问题。

获取所有参数

$class_list = get_declared_classes();
foreach( $class_list as $class_name){
    if( substr( $class_name, 0, 3) != 'Ap_'){
        continue;
    }
    echo "class ".$class_name."{\n";
    $methods_list = get_class_methods( $class_name);
    foreach( $methods_list as $method_name){
        echo "\n    public function ".$method_name."(";
        $ref = new ReflectionMethod( $class_name, $method_name);
        $param_list = $ref->getParameters();
        foreach( $param_list as $param){
            if( $param->name == '...'){
                echo " \$webben = ''";
            }else{
                echo " $".$param->name;
            }
            if( end( $param_list) != $param){
                echo ",";
            }
        }
        echo "){\n";
        echo "\n    }\n";
    }
    echo "}\n\n";
}