TDa*_*ver 5 knockout.js visual-studio-2012 typescript web-essentials
我刚刚将我的代码升级到Typescript 0.9,更新了Jquery,JqueryUI,Knockout,Knockout.Mapping和Knockout.Validation的DefinitelyTyped定义.
代码看似编译,我看到正确的输出js文件.
然而,VS强调每次使用obs(value: T)setter,KnockoutObservable<T>并KnockoutObservableArray<T>说我提供了无效的类型.
Error 27 Supplied parameters do not match any signature of call target.
Error 28 Could not select overload for 'call' expression.
Run Code Online (Sandbox Code Playgroud)
我有大约100个这样的错误.当我尝试输入一个时,intellisense提供(): T并(value: bool):void为每种类型提供 - 是的,无论TI指定什么,它都是bool.它是VS,编译器还是WebEssentials错误?如何让~100错误消失?
编辑(视觉证据):
lot.TimeOnServer是一个KnockoutObservable<number>,data.TimeOnServer是一个number.
是的,我重启了vs + windows.错误仍然存在.
我也遇到了同样的问题。我还没有调查为什么会发生这种情况,但在我的项目中注释掉 knockout.validation.d.ts 中的最后一个接口后,错误就消失了。但这会中断您对 isValid 进行验证的调用。
interface KnockoutSubscribableFunctions {
isValid: KnockoutComputed<boolean>;
isValidating: KnockoutObservable<boolean>;
rules: KnockoutObservableArray<KnockoutValidationRule>;
}
Run Code Online (Sandbox Code Playgroud)
我添加了以下内容来获取 isValid 函数
interface KnockoutObservableBase {
isValid: KnockoutComputed<boolean>;
isValidating: KnockoutObservable<boolean>;
rules: KnockoutObservableArray<KnockoutValidationRule>;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
447 次 |
| 最近记录: |