Tag: 打字稿

如何在TypeScript中扩展本地JavaScript数组

有什么办法从JS本地函数inheritance一个类。 对于(eg)我有js在我的js中像这样的function。 function Xarray() { Array.apply(this, arguments); //some stuff for insert, add and remove notification } Xarray.prototype = new Array(); 我试图将其转换为Typescript,但我失败了! export class Xarray implements Array { } 比较器要求我定义所有的数组接口属性,我知道是否需要这个Xarray.prototype = new Array(); 我必须在TS中扩展数组,如何在TS中扩展JS本地对象?

Angular 2:TypeError:l_thing0在AppComponent @ 4:44的

我在我的应用程序中遇到了一个奇怪的错误。 它应该从对象中打印{{thing.title}} ,但是在控制台中显示错误: EXCEPTION: TypeError: l_thing0 is undefined in [{{thing.title}} in AppComponent@4:44] 我不确定l_thing0是从哪里来的。 如果我尝试在页面中显示{{thing}} ,则会显示[object Object] 。 如果我尝试JSON.stringify(this.thing) (请参阅showObj()函数),它正确显示string化的对象。 但是,如果我尝试访问像{{thing.title}}这样的属性,我会得到l_thing0未定义的错误。 这里是app.component.ts: import {Component, OnInit} from 'angular2/core'; import {Thing} from './thing'; import {ThingService} from './thing.service'; import {SubThingComponent} from "./subthing.component"; @Component({ selector: 'thing-app', template: ` <div class="container"> <div class="row"> <div class="col-md-12"> <h1>{{thing.title}} <a href="#" (click)="showObj()" class="btn btn-default">Show […]

我可以在Angular 2中将事件从父母发送给孩子吗?

我在父类中提交button,即personDetails 。 personDetails有许多人员类。 每当我点击提交button,我想调用子类中的方法。 我怎样才能发出一个方法从父母到孩子使用output ? 从小孩到家长很容易做到。 我想要访问子组件的html值,因此我需要从父到子发出一个事件。

D3.js组件中的样式不以angular度2显示

我正在使用Angular 2和D3.js. 我想显示一个红色的矩形。 它只适用于style.css文件中的样式。 检查这个plunkr 当我把我的样式在组件styles: [] ,它不起作用。 检查这个plunkr 当我使用组件styles: []时如何让它工作styles: [] ? 谢谢 更新: @micronyks提供了一个解决scheme,但它使全局组件中的样式,在style.css文件中写入基本没有区别。 在这个plunkr中 ,它显示一个组件中的样式会覆盖另一个组件的样式,所以不能显示绿色和红色的矩形。 更新2: @Günter的方式完全解决这个问题! 只是一个提醒,对Günter的方式:它至less需要Angular beta 10。(我的其他plunkrs使用Angular beta 8)使用Angular beta 12的绿色和一个红色矩形的工作演示在这里 。 import {Component} from 'angular2/core' @Component({ selector: 'my-app', providers: [], styles: [` /*this does not work*/ .bar { fill: red; } `], template: ` <div> <svg class="chart"></svg> </div> […]

Angular 2 beta.17:Property'map'在types'Observable <Response>'上不存在

我刚刚从Angular2 beta16升级到beta17,而这又需要rxjs 5.0.0-beta.6。 (在这里更新日志: https : //github.com/angular/angular/blob/master/CHANGELOG.md#200-beta17-2016-04-28 )在beta16中,所有关于Observable / mapfunction的工作都很顺利。 在升级后出现以下错误,当打字稿尝试传送时出现以下错误: 属性'map'在types'Observable'上不存在(我曾经用过可观察的地图) c:/path/node_modules/rxjs/add/operator/map.d.ts(2,16):错误TS2435:环境模块不能嵌套在其他模块或命名空间中。 c:/path/node_modules/rxjs/add/operator/map.d.ts(2,16):错误TS2436:环境模块声明不能指定相对模块名称。 我已经看到这个问题/答案,但它不能解决问题: Angular2 beta.12和RxJs 5 beta.3的可观察错误 我的appBoot.ts看起来像这样(我已经引用了rxjs / map): ///<reference path="./../node_modules/angular2/typings/browser.d.ts"/> import {bootstrap} from "angular2/platform/browser"; import {ROUTER_PROVIDERS} from 'angular2/router'; import {HTTP_PROVIDERS} from 'angular2/http'; [stuff] import 'rxjs/add/operator/map'; import 'rxjs/add/operator/toPromise'; import {enableProdMode} from 'angular2/core'; import { Title } from 'angular2/platform/browser'; //enableProdMode(); bootstrap(AppDesktopComponent, [ ROUTER_PROVIDERS, […]

angular度2sorting和筛选

在Angularjs 1中,可以按以下方式进行sorting和过滤: <ul ng-repeat="friend in friends | filter:query | orderBy: 'name' "> <li>{{friend.name}}</li> </ul> 但是我找不到在Angularjs 2.0中如何做这个的例子。 我的问题是如何sorting和筛选Angularjs 2.0? 如果它仍然不被支持,有没有人知道什么时候或将是否将被放入Angularjs 2.0?

在TypeScript中运行时获取对象的类名

是否有可能在运行时使用打字机获取对象的类/types名称? class MyClass{} var instance = new MyClass(); console.log(instance.????); // Should output "MyClass"

如何dynamic地分配属性到TypeScript中的对象?

如果我想以编程方式将属性分配给Javascript中的对象,我会这样做: var obj = {}; obj.prop = "value"; 但在TypeScript中,这会产生一个错误: 属性“prop”不存在于types“{}”的值上 我应该如何将任何新属性分配给TypeScript中的对象?

如何在没有.d.ts的情况下使用来自typescript的外部非打字稿库?

我已经在我的.html文件中定义了这些: <script type="text/javascript" src="bower_components/tree.js/tree.min.js"></script> <script type="text/javascript" src="bower_components/q/q.js"></script> <script type="text/javascript" src="test.js"></script> 然后在test.js中: var myTree = Tree.tree({}) 但是Typescript错误地说:“找不到名字”树“” 我也试着用–module amd编译并放置import Tree = require("model/tree"); 在test.js文件的顶部,但又出错了: Cannot find external module 'model/tree'. 但是显然它应该是一个有效的导入,请参阅此处定义的位置: https : //github.com/marmelab/tree.js/blob/master/src/main.js 我不想为每个我想使用的外部JavaScript文件编写.d.ts文件,那么Typescript想要我怎么做呢?

如何避免在Angular 2中input很长的相对path?

我怎样才能引入像'my-app-name/services'以避免行像下面的导入? import {XyService} from '../../../services/validation/xy.service';