在处理使用 Composer json 自动加载的类时,我的项目中出现了未定义的类型。
这是我的composer.json 文件的摘录
"autoload": {
"psr-4": {
"App\\": "app/",
"Shared\\": "../Shared/"
},
"classmap": [
"database/seeds",
"database/factories"
],
"files": [
"app/helpers.php"
]
},
自动完成功能无法识别 Shared 中的任何内容。
在 LanguageServer 日志中我发现 vs-code 正确解析了所有自动加载文件。
这是一个仅与 vs-code 和 intellisense/intelephense 相关的问题;当我运行该项目时,一切都像魅力一样工作。
如有任何帮助,我们将不胜感激。
只需在 .vscode/settings.json 文件中添加以下 json 值即可:
{
"intelephense.environment.includePaths": [
"../Shared/"
]
}
不仅错误消失了,而且代码补全也开始工作了!
将“答案”代码添加到您的工作区(设置).json 文件中(按 CTRL->SHIFT->P,在文本框中键入 settings.json)是有益的。选择工作区设置文件。workspcae 文件选项会覆盖文件夹和用户文件。这样,它将成为所有 VS Code 项目的默认值。:-)