我正在使用bridge.NET和Retyped,我将Chartist作为js库,并且还将Retyped.chartist作为Visual Studio中的nuget包(它将c#代码映射到js库)。
当我运行网站时,库已加载。但是我的代码不起作用:
chartist.Chartist2.Line.New(newUsersChart, new Chartist.IChartistData
{
labels = arr,
series = arr2
});
错误是未定义Chartist2。试图访问未定义的行。
我尝试查看重新输入的映射,但没有运气。在互联网上找不到关于这种特定情况的任何信息...
最佳答案
我安装了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
config部分:"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图表应正确呈现。
希望这可以帮助。
关于javascript - 重新输入chartist的用法不清楚。如何创建基本折线图?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54160876/