首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >量角器-使用ng2-charts/Chart.js从Angular2中的画布属性获取数组

量角器-使用ng2-charts/Chart.js从Angular2中的画布属性获取数组
EN

Stack Overflow用户
提问于 2017-03-31 21:32:12
回答 1查看 666关注 0票数 0

我正在使用基于chart.js的ng2-charts,在我的Angular 2应用程序中使用它,我想用我的量角器测试在<canvas>元素的一个属性中检查一些数据。

我找不到访问数据的方法。我使用evaluate找到了解决方案,但我不确定这是针对Angular1还是针对2。

以下使用evaluate的解决方案对我不起作用:Test a Chart.js canvas with Protractor

我的画布设置:

代码语言:javascript
复制
  <div style="display: block">
    <canvas id="test" 
            [datasets]="chartData"
            [labels]="chartLabels"
            [options]="ChartOptions"
            [legend]="showRegions"
            [chartType]="barChartType" 
            height="100%"></canvas>
  </div>

加载页面时,canvas元素如下所示(为方便起见,我删除了label属性)。

代码语言:javascript
复制
<canvas id="test" ng-reflect-datasets="[object Object],[object Object]" ng-reflect-chart-type="bar" ng-reflect-legend="true"></canvas>

现在我找到我的canvas元素,如下所示:

代码语言:javascript
复制
var canvas = element(by.css("canvas#test[ng-reflect-datasets]"));

从这里开始我就被卡住了。如果我访问ng-reflect datasets属性,我只得到字符串"object Object...“但我需要这些对象中的值。

这有没有可能呢?

EN

回答 1

Stack Overflow用户

发布于 2017-04-01 05:16:57

你试过这样做吗..。

代码语言:javascript
复制
var canvas = element(by.css("canvas#test[datasets]"));
canvas.evaluate("chartData").then(function (datasets) {
    // datasets is an array of objects that each have data, label, etc.
    console.dir(datasets[0].data);
});

注意,我只是从你问题中的SO答案+我对NG2图表的了解中得出这个结论(我以前没有使用过量角器)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43142034

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档