3

我正在将我的 SPA 应用程序从 Javascript 更改为 typeScript。在这个项目中,我使用了 Fusionchart JQuery 插件。现在我必须将 FusionChart 集成到这种类型的 Script 项目中。我在我的项目中添加了 jquery.d.ts 但无法弄清楚如何使用它来集成。

有什么办法吗?

4

2 回答 2

2

您可以通过两种方式获取和使用 TypeScript。

  1. 适用于 Microsoft Visual Studio 2012 的 MSI 包。
  2. 命令行 TypeScript 编译器可以作为 Node.js 包安装。

简单地说 TypeScript 将所有.ts文件编译为.js文件。即使.ts文件只包含 JavaScript 而根本不包含 TypeScript也没关系,因为它是 JavaScript 的超集

因此,只需将您的 JavaScript 文件重命名为.ts,您的应用程序就会正常运行。额外的好处是您可以使用 TypeScript 的强大功能。

于 2013-08-27T11:13:38.347 回答
2

首先感谢大家。

我做了如下:

我在单独的 ts 文件中声明了一个类名称 FusionChart,如下所示:

declare class FusionCharts  {

    constructor(ChartType: string, ChartName: string, height: string, width: string);

    constructor(ChartType: string, ChartName: string, height: string, width: string, other: string);

    public setXMLData(ChartValues: string): any;

    public render(renderId: string): any;
    public static setCurrentRenderer(renderName: string): any;
}

之后,我在 ViewModel 后端 .ts 文件中使用了此类的构造函数,如下所示:

  1. 我添加了 FusionChart 类的引用。
  2. 创建了融合图表对象。
  3. 在 compositionComplete 中,我将 CurrentRenedrer 设置为 JavaScript(可选)并使用了 render 方法。

我的代码如下:

export class FinancialView 
{
   public column3DChart: FusionCharts;

   constructor() {
     this.column3DChart = new FusionCharts("Column3D", "myChartId", "300", "200");
     this.column3DChart.setXMLData("XML data");
    }
    compositionComplete() {
       FusionCharts.setCurrentRenderer('javascript');
       this.column3DChart.render("chartdivId");
    }
}
于 2013-09-02T09:44:39.973 回答