小编And*_*eas的帖子

尽管使用ECMAScript 6,却打字稿找不到名字'Promise'

我目前正在尝试在Visual Studio 2015中开发一个node.js应用程序,它一直在告诉我

TS2304找不到名字'承诺'

在项目设置中,我将ECMAScript 6配置为构建系统,将ES 2015配置为模块系统.

我已经试过了

没有成功,但在第二个链接中,他们说它应该与ECMAScript版本设置为6,但它对我没有任何改变.

编辑:我现在做了一些更多的诊断.问题似乎是IntelliSense使用的ECMAScript版本与构建系统之间存在不匹配.

我通过使用更多ECMAScript 6函数发现了这一点,导致以下IntelliSense投诉:

TS1311异步功能仅在定位ECMAScript 6及更高版本时可用.

所以新问题:我在哪里设置IntelliSense使用的ECMAScript版本?

javascript typescript es6-promise visual-studio-2015

3
推荐指数
1
解决办法
2970
查看次数

使用ReflectiveInjector注入服务,而不指定依赖关系树中的所有类

我目前有一个为我生成一个对象的服务,它应该表现为一种活动记录,因为它可以懒得填充自己作为访问它的属性.

我的第一种方法是将生成的对象使用的服务注入到创建服务中,并将它们传递给创建的对象的构造函数,但由于创建服务从不使用这些服务,因此它看起来很脏.

第二个apporach是使用ReflectiveInjector:

let injector = ReflectiveInjector.resolveAndCreate(
                    [
                        ClassToBeCreated,
                        ServiceA,
                        ServiceB,
                        ServiceC
                    ]
                )
let created = injector.get(ClassToBeCreated)
Run Code Online (Sandbox Code Playgroud)

但这崩溃了:

EXCEPTION: No provider for Http! (ClassToBeCreated -> ServiceA -> Http)
Run Code Online (Sandbox Code Playgroud)

如果我在resolveAndCreate中指定Http,它将失败并具有Http的下一个依赖项.

有没有一种方法可以注入而无需在树上指定所有依赖项并让角度处理它?

我是否以一种根本错误的方式处理这个问题?

任何帮助是极大的赞赏.

dependency-injection angular

2
推荐指数
1
解决办法
3020
查看次数

在测试项目中包括.cpp文件的更好方法?

我目前正在使用Visual Studio编写C ++程序。

现在,我想添加第二个Test项目,该项目应该包含我的单元测试。现在的问题是,如果我想测试自己的代码,则即使我包含了标头,也必须将源文件中每个主文件的.cpp文件从主项目添加到第二个项目中。有更好的选择吗?

非常感谢你。

c++ unit-testing visual-studio

0
推荐指数
1
解决办法
2117
查看次数