Angular2和TypeScript错误“属性METHOD_NAME在类型'typeof CLASS_NAME'上不存在
问题描述:
我需要一些帮助。我正在玩Angular2和TypeScript的基础知识作为从A1到A2的切换的一部分,因此这里的某些内容可能会很明显。你Angular2和TypeScript错误“属性METHOD_NAME在类型'typeof CLASS_NAME'上不存在
我有这样的情况:。
- 的WebPack使用
-
AppConfigConst
持有一些静态的,应用范围的配置数据 -
AppConfigurationInjectable
需要AppConfigConst
,并公开简单的API。访问配置数据。 -
SelectedLanguageInjectable
想对从AppConfigConst
使用方法,在这里我得到这个:
错误在[默认] C:_DEV \ XXX \ SRC \程序\共享\选择语言\选择,language.injectable .ts:9:46属性'getSupportedUiLanguages'在'typeof AppConfigurationInjectable'类型上不存在。
答
您的构造函数中的错误。它应该是:
constructor(private appConfiguration: AppConfigurationInjectable){
变化=
与:
:
是在打字稿定义类型=
是设定值,你也知道。
+1
具体(在这种情况下)默认函数参数。所以'appConfiguration'变量指向的是AppConfigurationInjectable接口/类本身,而不是一个实例。 – user268396
首先将代码粘贴到问题中,而不是截图。问题是'私人appConfiguration ** = ** AppConfigurationInjectable'。 '='应该是':',因为'='定义了参数的默认值,而不是它的类型。 –
...和你的'selectedLang'被设置为一个字符串...不应该是一个数组? – Alex