重新输入chartist的用法不清楚。如何创建基本折线图?

时间:2019-01-12 15:11:35

标签: javascript c# bridge chartist.js bridge.net

我正在使用bridge.NET和Retyped,我将Chartist作为js库,并且还将Retyped.chartist作为Visual Studio中的nuget包(这将c#代码映射到js lib)。 当我运行网站时,库已加载。但是我的代码不起作用:

chartist.Chartist2.Line.New(newUsersChart, new Chartist.IChartistData
        {
            labels = arr,
            series = arr2
        });

错误是Chartist2未定义。试图访问未定义的行。 我尝试查看重新输入的映射,但没有运气。在互联网上找不到关于这种特定情况的任何信息...

1 个答案:

答案 0 :(得分:2)

我已安装 Bridge CLI ,并使用以下命令创建了一个演示项目(在Mac上):

mkdir demo1
cd demo1
bridge new
bridge add package retyped.chartist
bridge build
bridge run
code .

code .的调用会在Visual Studio Code中打开项目。

Program.cs 中,我使用了以下C#:

using System;
using Bridge;
using Retyped;
using static Retyped.chartist;

namespace Demo
{
    public class Program
    {
        public static void Main(string[] args)
        {
            var data = new Chartist.IChartistData
            {
                labels = new es5.Array<string>("Mon", "Tue", "Wed", "Thu", "Fri"),
                series = new es5.Array<es5.Array<double>>(new es5.Array<double>(5, 2, 4, 2, 0 ))
            };

            var options = new Chartist.ILineChartOptions
            {
                width = 300,
                height = 200
            };

            Chartist2.Line.New(".ct-chart", data, options);
        }
    }
}

不是最干净或最明显的C#,但这是当前工作所需的。希望在将来的某个时候,Retyped可以改善C#以允许使用更自然和常见的C#类,例如匿名对象和基本C#数组。

此演示基于Chartist Getting Started文档中提供的示例。

项目 bridge.json 文件中还需要以下loader配置部分:

"loader": {
  "manualLoading": "true",
  "skipManualVariables": "true"
}

然后在/ dist文件夹中,创建一个新的 demo.html 文件并添加以下内容:

<!DOCTYPE html>
<html>
  <head>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/chartist/0.9.8/chartist.min.css">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/chartist/0.9.8/chartist.js"></script>

    <script src="bridge.js"></script>
    <script src="demo1.js"></script>
  </head>
  <body>
    <div class="ct-chart ct-perfect-fourth"></div>
  </body>
</html>

重建项目。

如果您返回浏览器并查看 demo.html ,则Chartist图表应正确呈现。

希望这会有所帮助。