PHPSTORM 里这种写法有什么好的方法实现方法间的跳转和代码提示吗

2021-01-19 11:19:51 +08:00
 NakeSnail
        return Apiato::call("Wechat@GetTmpKeyTask",[$data->tmpKey],['withinExpiration']);

call 这种方式最终都是运行 GetTmpKeyTask 的 run 方法,想要能有直观的方式知道 run 方法的入参。

代码提示 tabnine 勉强还行,方法跳转没想到啥好的方法。

2607 次点击
所在节点    PHP
13 条回复
coooold
2021-01-19 13:53:09 +08:00
namespace PHPSTORM_META
coooold
2021-01-19 13:53:43 +08:00
.phpstorm.meta.php

override() 方法
sanggao
2021-01-19 15:54:15 +08:00
@coooold 老哥能不能详细说下
NakeSnail
2021-01-19 16:11:55 +08:00
@coooold 试了下支持的操作不多,没实现我要的
NakeSnail
2021-01-19 16:12:16 +08:00
niucility
2021-01-19 18:51:45 +08:00
不要用字符串的方式调用,用 GetTmpKeyTask::class 的方式来调用
NakeSnail
2021-01-20 10:47:22 +08:00
@niucility apiato 这个框架不太推荐这么做,避免不同模块之间的直接依赖。我觉得也挺有道理,要是 GetTmpKeyTask::class 这种方式能解决第二个参数提示是 GetTmpKeyTask::class 这类的 RUN 方法的参数的吧就比较好了
Wenco
2021-01-22 15:31:44 +08:00
@NakeSnail 有个疑问,写业务,直接依赖与间接依赖有什么区别?
NakeSnail
2021-01-22 16:01:32 +08:00
@Wenco 不会使整个程序报错,缺少 GetTmpKeyTask::class 只会影响调用他的失败
Wenco
2021-01-22 18:03:32 +08:00
@NakeSnail 我怎么觉得这反而是坑,PHP 都在向静态化靠拢了,这样处理反而增加了排错成本。
NakeSnail
2021-01-22 18:18:23 +08:00
@Wenco 各有各的道理吧,降低不同模块间的耦合度,方便拆成微服务吧,只是现实里这种作用不太大。我个人这两种写法都不太喜欢。敲起来都不太方便
zjsxwc
2021-02-17 18:41:27 +08:00
再套个娃呗,写个脚本生成类似下面这种代码。


/**
* @param string $datatmpKey
*/
function RunGetTmpKeyTask($datatmpKey){
return Apiato::call("Wechat@GetTmpKeyTask",[$datatmpKey],['withinExpiration']);
}
8355
2021-06-07 17:32:01 +08:00
ACEJUMP?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/746228

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX