我有一个隐藏的问题,并显示一个依赖于Angular 2中的布尔variables的元素。 这是div显示和隐藏的代码: <div *ngIf="edited==true" class="alert alert-success alert-dismissible fade in" role="alert"> <strong>List Saved!</strong> Your changes has been saved. </div> 该variables是“编辑”,它存储在我的组件: export class AppComponent implements OnInit{ (…) public edited = false; (…) saveTodos(): void { //show box msg this.edited = true; //wait 3 Seconds and hide setTimeout(function() { this.edited = false; console.log(this.edited); }, 3000); } } […]
我在TypeScript中有下面的类: class CallbackTest { public myCallback; public doWork(): void { //doing some work… this.myCallback(); //calling callback } } 我正在使用这样的类: var test = new CallbackTest(); test.myCallback = () => alert("done"); test.doWork(); 该代码的工作原理,所以它按预期显示一个消息框。 我的问题是:有没有我可以提供我的类字段myCallback ? 现在,公共领域myCallback是anytypes如上所示。 我怎样才能定义callback的方法签名? 或者我可以只将types设置为某种callbacktypes? 或者我可以做些什么呢? 我必须使用any (隐式/显式)? 我尝试了这样的东西,但它没有工作(编译时错误): public myCallback: (); // or: public myCallback: function; 我在网上找不到任何解释,所以我希望你能帮助我。
如何configurationvisual studio代码来保存打字稿文件? 我发现可以使用${file}作为参数来configuration一个任务来构build焦点${file} 。 但是我希望在保存文件的时候这样做。
当涉及Typescript的时候,我意识到模块中的类(用作名称空间)对于其他类是不可用的,除非我在它们之前写了export关键字,例如: module some.namespace.here { export class SomeClass{..} } 所以现在我可以像这样使用上面的代码: var someVar = new some.namespace.here.SomeClass(); 然而,我只是想知道为什么这个关键字被用来反对只使用在方法级别使用public关键字来表示方法或属性应该是外部访问。 那么为什么不使用这个相同的机制来使类和接口等在外部可见呢? 这会给结果代码如: module some.namespace.here { public class SomeClass{..} }
在VS2013大厦停止时,TSC退出代码1。这不是在VS2012的情况。 我如何运行我的解决scheme,忽略tsc.exe错误? 我得到很多The property 'x' does not exist on value of type 'y'错误的值,我想要忽略使用JavaScript函数时。
有没有人知道string和string之间的TypeScript的区别? 我认为他们应该是一样的吗? var a: String = "test"; var b: string = "another test"; a = b; b = a; // this gives a compiler error! 编译器的当前版本说: Type 'String' is not assignable to type 'string'. 'string' is a primitive, but 'String' is a wrapper object. Prefer using 'string' when possible. 这是一个错误?
我只是开始在我的HTML客户端项目中使用TypeScript ,该项目属于已经存在entity framework域模型的MVC项目。 我希望我的两个项目(客户端和服务器端)完全分开,因为两个团队将在此工作… JSON和REST用于来回传递对象。 当然,我的客户端的domain对象应该与服务器端的对象相匹配。 在过去,我通常手动完成这项工作。 有没有办法重用我的C#类定义(特别是在我的领域模型中的POJO类)在TypeScript中创build相应的类“?
如何在TypeScript或Javascript中处理types转换? 说我有以下的TypeScript代码: module Symbology { export class SymbolFactory { createStyle( symbolInfo : SymbolInfo) : any { if (symbolInfo == null) { return null; } if (symbolInfo.symbolShapeType === "marker") { // how to cast to MarkerSymbolInfo return this.createMarkerStyle((MarkerSymbolInfo) symbolInfo); } } createMarkerStyle(markerSymbol : MarkerSymbolInfo ): any { throw "createMarkerStyle not implemented"; } } } SymbolInfo是一个基类。 在TypeScript或Javascript中如何处理从SymbolInfo到MarkerSymbolInfotypes转换?
我注意到有一个npm组织@types ,其中包含input包,但无法find任何文档。 这些是如何使用的? 这是否意味着与打字工具一起使用? 如果是的话,如何安装? 例如,有一个@types/openlayers包,但@types/openlayers typings search npm:openlayers什么都不返回。 这是否意味着与打字工具分开使用? 比如直接用npm安装?
我有一个TypeScript类的定义,像这样开始; module Entities { export class Person { private _name: string; private _possessions: Thing[]; private _mostPrecious: Thing; constructor (name: string) { this._name = name; this._possessions = new Thing[100]; } 看起来像一个types的数组Thing没有得到正确的翻译到相应的JavaScript数组types。 这是生成的JavaScript代码片段: function Person(name) { this._name = name; this._possessions = new Entities.Thing[100](); } 执行包含Person对象的代码时,在尝试初始化_possession字段时引发exception: 错误是“0x800a138f – Microsoft JScript运行时错误:无法获取属性的值'100':对象为空或未定义”。 如果我将_possession的types更改为any[]并且用new Array()exception不会引发_possession。 我错过了什么?