今天,我从TypeScript开始,阅读了@blorkfish中的博客
我从typescriptlang.org下载了VS插件,并通过nuget下载了最新的ExtJS定义。
PM>安装-软件包extjs.TypeScript.DefinitelyTyped
好的,让我们从编写一个基本的MVC应用程序开始,如块文章中所描述的:
编译时型 利用强大的TypeScript优点(即类型安全)的唯一方法是手动将这些配置块类型转换为正确的类型,方法是使用编译时类型转换如下: Ext.application( { // Ext.application配置块//现在具有智能感知和类型转换} );
这结束了

错误说没有Ext_app_Application的定义
发布于 2013-07-13 07:55:26
只是一个额外的信息:
您是否尝试过<Ext.app.IApplication>原因,这对于ExtJS TypeScript定义的最新版本有效。请注意,在博客中使用的定义与通过nuget获得的定义是不同的。
发展和发展评论:
将配置块转换到适当的接口,以启用代码提示。
发布于 2013-09-04 13:16:16
我写的最初的博客文章是基于Mike (zz9pa)的出色工作,并于2013年1月发表。
2013年7月左右,brian428向DefinitelyTyped提交了他的extjs.d.ts文件。
这两个.d.ts文件中的差异解释了为什么会出现此错误。
Mike的extjs接口使用_(下划线)分隔类名,如下所示:
interface Ext_AbstractComponent extends Ext_Base { ... }brian428 428的extjs接口使用的地方。(点)如下:
interface Ext.AbstractComponent extends Ext.Base { ... }玩得开心
发布于 2013-07-12 09:12:28
Ext.application()的签名表示它接受一个名为any类型的config的可选参数。
Ext.Application(config?: any) : void;所以你应该像这样传递你的对象:
/// <reference path="Scripts/typings/extjs/ExtJS.d.ts" />
Ext.application({
name: 'SampleApp',
appFolder: '/app/sampleapp',
controllers: ['SampleController'],
launch: () => {
console.log('getting started');
}
});https://stackoverflow.com/questions/17610474
复制相似问题