- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Angularjs 框架开发一个 ionic 应用程序。我面临的问题是,当我的下拉值发生变化时,我的 devextreme(dx-chart)组件没有刷新。当我控制台该值时,我发现我的参数成功传递给函数。但是,我的 devextreme(dx-charts)组件没有根据新数据源进行更新。有什么解决办法吗?
以下是我的源代码。
Controller 代码
.controller('DashCtrl', function($scope, $http, $filter) {
var defaultYear = 2017;
var defaultMonth = 11;
getPieChatsData(defaultYear, defaultMonth);
$scope.showSelectYear = function(mySelectYear) {
getPieChatsData(mySelectYear, defaultMonth);
}
$scope.showSelectMonth = function(mySelectMonth){
getPieChatsData(defaultYear, mySelectMonth);
}
function getPieChatsData(defaultYear, defaultMonth)
{
$http.get('lib/stcust.json').then(function(response) {
var sales_targeted_year = ($filter('filter')(response.data, {caL_YEAR: defaultYear }));
var sales_targeted = ($filter('filter')(sales_targeted_year, {caL_MONTH: defaultMonth }));
var data_Source = new DevExpress.data.DataSource({
load: function () {
return VitalSignsDataService.ShowDataTable();
}
});
console.log(sales_targeted);
$scope.chartOptions = {
palette: "bright",
dataSource: sales_targeted,
title: "Targeted Sales",
legend: {
orientation: "horizontal",
itemTextPosition: "right",
horizontalAlignment: "center",
verticalAlignment: "bottom",
columnCount: 4
},
series: [{
argumentField: "cusT_CD",
valueField: "saleS_TARGET",
label: {
visible: true,
connector: {
visible: true,
width: 0.5
}
}
}]
};
});
}
})
HTML 代码
<ion-view view-title="Pie Chats">
<ion-content>
<label class = "item item-input item-select">
<div class = "input-label">
Select Year
</div>
<select ng-model="mySelectYear" ng-change="showSelectYear(mySelectYear)">
<option>2016</option>
<option>2017</option>
<option>2018</option>
</select>
</label>
<label class = "item item-input item-select">
<div class = "input-label">
Select Month
</div>
<select ng-model="mySelectMonth" ng-change="showSelectMonth(mySelectMonth)">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
<option>11</option>
<option>12</option>
</select>
</label>
<ion-item>
<div id="pie" dx-pie-chart="chartOptions"></div>
</ion-item>
</ion-content>
</ion-view>
最佳答案
将 sales_targeted 变量移至 angularjs 范围,并使用 bindingOptions 将其绑定(bind)到图表的数据源。 。请参阅下面的代码片段。
$scope.sales_targeted = [];
$scope.chartOptions = {
palette: "bright",
bindingOptions: {
"dataSource": "sales_targeted"
},
title: "Targeted Sales",
legend: {
orientation: "horizontal",
itemTextPosition: "right",
horizontalAlignment: "center",
verticalAlignment: "bottom",
columnCount: 4
},
series: [{
argumentField: "cusT_CD",
valueField: "saleS_TARGET",
label: {
visible: true,
connector: {
visible: true,
width: 0.5
}
}
}]
};
function getPieChatsData(defaultYear, defaultMonth) {
$http.get('lib/stcust.json').then(function(response) {
var sales_targeted_year = ($filter('filter')(response.data, { caL_YEAR: defaultYear }));
$scope.sales_targeted = ($filter('filter')(sales_targeted_year, { caL_MONTH: defaultMonth }));
});
}
关于javascript - 当数据源更改时,Angularjs Devextreme 组件不刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51170442/
我正在尝试为 Angular 的 DevExtreme 小部件加载主题。我采用了不同的方法: 在 angular.json 中设置样式但不会产生任何影响: "projects": { "my-proj
我尝试使用 devextreme + jquery/我可以理解,我可以如何执行下一个功能我需要 $("#gridContainer").dxDataGrid({ dat
在我的项目中,我在 Razor 页面中设置了一个简单的数据网格,如下所示: @(Html.DevExtreme().DataGrid().ID("gridContainer") .C
如何自定义 valueAxis 的标题,如下所示: argumentAxis: { label: { customi
您好,我第一次使用 DevExtreme 框架的图表,因为我正在为我的 Web 应用程序寻找一个好的图表插件,它可以解决我的一些特殊要求。目前我的图表看起来像这样(我不能把它放在 fiddle 或 s
是否可以在 DevExtreme 网格中的一个特定列上设置默认排序值? 在此示例中,我有两列。一列禁用过滤。例如,在我想要过滤的第二列中,我的值是 1,2,3。在加载文档时,我只需要向用户显示值 1,
我第一次使用 DevExpress 的 DevExtreme 图表,我非常热情,但我确实有 2 个问题无法解决。我有一个图表,其定义如下: var dataSourceTest = [
我正在寻找一种方法来跟踪表单字段是否已使用 DevExtreme 组件进行修改。我想我可以将它们全部绑定(bind)到一个事件监听器: $('input').change(function () {
我想为 DevExtreme DataGrid 实现一个 onRowDblClick 事件。我需要多个网格的这个事件,所以我想为一般的 DataGrid 实现这个。 我正在考虑覆盖 onClick 操
我正在使用 DevExtreme 图表。有一个选项 resolveLabelOverlapping,当为饼图设置为 shift 时将解决我的问题,但没有为气泡图设置 shift。 有什么办法可以让标签
我有一个 ODataStore: var storeUsers = new DevExpress.data.ODataStore({ type: "odata", jsonp: fal
为了解决以下问题,我尝试设置 Offset和 margin 我有一个饼图: 完美呈现标签。 有时,当我们更改数据源时,标签会折叠。并且仅显示 ... 我的直觉表明,发生这种情况是因为右侧出现了不必要的
有什么方法可以更改模式中删除模式确认中的"is"和“否”文本按钮? 我试过这个并更改了我的消息,但我无法更改是和否按钮文本 editing: { mode: "form",
有人知道如何更改 DevExtreme React Grid 中 TableHeaderRow 的字体大小吗? 这是我一直使用的网站 ( https://devexpress.github.io/de
首先,我对 javascript 相当陌生,但我了解 python 的方法。我正在尝试学习 javascript,我可能无法尝试这个,但这就是你学习的正确方式。 其次,Flask 和 AngularJ
我正在尝试加密我服务器上的数据库与使用 javascript 的 devExtreme 制作的移动应用程序之间的通信。他们的支持团队给出了一个涉及使用 base_64encode 的示例。这是一种安全
DevExtreme 支持角度指令,如 this example page for dxDataGrid 所示.我怎样才能用 Aurelia 达到同样的效果? 显示集成的示例: https://www
我正在使用 Angularjs 框架开发一个 ionic 应用程序。我面临的问题是,当我的下拉值发生变化时,我的 devextreme(dx-chart)组件没有刷新。当我控制台该值时,我发现我的参数
我正在使用最新版本的DevExtreme for Angular 2当我写这篇文章时,版本是 16.2。我有一个 DevExtreme 表单,它从其组件获取数据user。正如您所看到的,没有太多内容。
是否可以伸展树(Splay Tree) View 、滚动到节点并将其聚焦于一个功能? $("#buttonTest").dxButton({ text: "Test", onC
我是一名优秀的程序员,十分优秀!