我想花点时间“清理”个人应用程序,删除大部分警告等。
如标题中所述,我使用PhpStorm IDE,并且在使用series.slug
时出现一些警告“ Unresolved variable slug”。变量series
来自PHP类的JSON或Ajax调用之后。
是否有一种方法可以指示对象的属性或将js变量链接到PHP类(例如在Twig中)?
P.S。在我的“设置>语言> JS>代码质量工具”中,我没有启用任何功能,而只是进行了“基本” PhpStorm检查。
答案 0 :(得分:1)
如果您将某些对象与仅在运行时才知道的键一起使用(生成,通过ajax调用接收,等等)在代码中,则IDE无法使用静态代码分析来解析它们。 但是您可以让IDE知道您的运行时数据是什么样的。使用JSDoc注释的可能解决方案:
/**
* @typedef {Object} series
* @property {string} slug
* ... other series props here....
*/
...
/**
* function that uses series data
* @param {series} data
*/
function foo (data){...}
另请参见https://youtrack.jetbrains.com/issue/WEB-17419#comment=27-1058451,https://intellij-support.jetbrains.com/hc/en-us/community/posts/206349469-disable-unresolved-variable-on-json-object-received-by-ajax-call