Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ember.js 用于Ember注入服务的Intellisense_Ember.js_Visual Studio Code_Webstorm_Intellisense_Ember Cli - Fatal编程技术网

Ember.js 用于Ember注入服务的Intellisense

Ember.js 用于Ember注入服务的Intellisense,ember.js,visual-studio-code,webstorm,intellisense,ember-cli,Ember.js,Visual Studio Code,Webstorm,Intellisense,Ember Cli,我有点沮丧,在任何通用IDE(如VS代码、Webstorm、Atom)中似乎都没有任何像样的“余烬智能感知”。所谓“intellisense”,我的意思是,只要我的Ember项目是一个标准的Ember CLI项目,包含所有公共服务、助手文件夹等,并且我使用myService:Service()注入一个服务,intellisense就会识别出这一点,在键入this.myService后,我就会看到服务中的所有功能。另外,如果我按住Ctrl键并单击this.myService.myFunction(

我有点沮丧,在任何通用IDE(如VS代码、Webstorm、Atom)中似乎都没有任何像样的“余烬智能感知”。所谓“intellisense”,我的意思是,只要我的Ember项目是一个标准的Ember CLI项目,包含所有公共服务、助手文件夹等,并且我使用
myService:Service()
注入一个服务,intellisense就会识别出这一点,在键入
this.myService
后,我就会看到服务中的所有功能。另外,如果我按住Ctrl键并单击
this.myService.myFunction()
中的函数,我希望能够导航到myFunction的定义

对于其他框架,比如Angular,有一些插件支持所有这些

我真的需要使用“在文件中查找”来查找服务函数的定义吗


是否有人知道我可能错过的方法或工具,以及支持此场景的方法或工具?请注意,我并不是说在路由器/控制器/模板之间切换等简单功能,而是说定制对象的真正智能感知。

情况确实还不太好。有几件事确实很有帮助:

  • 通过使用TypeScript将为您带来许多好处。(充分披露:我是维护者。)
  • 有一个社区驱动的IntelliJ插件,非常好;它具有相当多的这些功能,并且由Ember CLI团队的一名成员对其进行更新
  • 有一个,包括一个语言服务器,它提供了相当多的信息

(这里当然还有很多工作要做,不幸的是,似乎没有一个IDE开发人员对自己提供本机支持感兴趣,所以这一切都落在社区的肩上了。)

您可以看看ember社区建议的各种代码编辑器和插件,

我想和你一样,意识到没有IDE对Ember有特别好的支持

在过去的6个月里,我一直在使用Webstorm社区版,但我认为它不是理想的IDE。我想知道是否有一个IDE提供了某种intellisense/代码完成/助手建议

Ember似乎一直都是一个非常类似IDE的框架,所以这里没有人(Ember社区、IDE开发人员)为IDEA、Atom或VS代码构建任何聪明的插件,这让我感到惊讶。

VS代码插件:

-用于VSCode的Langserver


-非官方金丝雀版本。

您使用的是打字脚本吗?Angular默认为typescript,它支持许多编辑器默认支持的类型查找功能。在ember中,尽管大部分框架本身都是用typescript编写的,但使用它是可选的,当然我使用ember语言服务器来编写vscode(而不是canary版本)。但是,它没有为注入对象提供“丰富的”intellisense。金丝雀版本在模板中提供intellisense,这是neatI在ember cli typescript中做过的,但是切换到typescript对于我当前的项目来说似乎太过实验性和耗时。其中涉及的远不止将“.js”修改为“.ts”版本,看来,如果我通读www.chriskrycho.com上的文章,情况确实如此——尽管这些帖子也需要另一轮更新!