I keep running into a Vue warn error when trying to use a chart that has its aggregate prop set to sum and it's baseunit prop set to days,weeks or years. The error says "You may have an infinite update loop in watcher with expression "dataItems" ". I have also attached a picture of the full error for better context. I have tried both the native component chart and the wrapper component chart. Both produce the exact same error. I am currently using Vue 2 to be specific Vue 2.7.0 . I am assuming that being on Vue 2 is causing the error because the code I have attached below works on stackblitz but on stackblitz the dev environment is using Vue 3 not 2.
Here is my code using the native component:
<template>
<div>
<Chart>
<ChartTitle :text="'Daily Max (°C)'" />
<ChartSeries>
<ChartSeriesItem
:type="'line'"
:field="'VisitCount'"
:category-field="'Date'"
:data-items="testor"
:aggregate="'sum'"
:name="'test'"
/>
</ChartSeries>
<ChartCategoryAxis>
<ChartCategoryAxisItem :base-unit="'weeks'" />
</ChartCategoryAxis>
</Chart>
</div>
</template>
<script>
import {
Chart,
ChartTitle,
ChartSeries,
ChartSeriesItem,
ChartCategoryAxis,
ChartCategoryAxisItem,
} from '@progress/kendo-vue-charts';
import 'hammerjs';
export default {
components: {
Chart,
ChartTitle,
ChartSeries,
ChartSeriesItem,
ChartCategoryAxis,
ChartCategoryAxisItem,
},
data: function () {
return {
testor: [
{
VisitCount: 13,
timestamp: '2018-01-01T00:00:00.000',
Date: new Date('2018-01-01T00:00:00.000'),
},
{
VisitCount: 13,
timestamp: '2018-01-01T00:00:00.000',
Date: new Date('2018-01-01T00:00:00.000'),
},
{
VisitCount: 13,
timestamp: '2018-01-05T00:00:00.000',
Date: new Date('2018-01-05T00:00:00.000'),
},
{
VisitCount: 50,
timestamp: '2018-02-01T00:00:00.000',
Date: new Date('2018-02-01T00:00:00.000'),
},
{
VisitCount: 13,
timestamp: '2018-04-01T00:00:00.000',
Date: new Date('2018-04-01T00:00:00.000'),
},
],
};
},
};
</script>
Here is my code using the wrapper component:
<template>
<div>
<chart
ref="chart"
:series-defaults-type="'line'"
:category-axis="axis"
>
<chart-series-item
:name="'test'"
:data="testor"
:category-field="'Date'"
:field="'VisitCount'"
:color="'#f3ac32'"
:aggregate="'sum'"
>
</chart-series-item>
</chart>
</div>
</template>
<script>
import { Chart, ChartSeriesItem } from '@progress/kendo-charts-vue-wrapper';
export default {
name: 'App',
components: {
chart: Chart,
'chart-series-item': ChartSeriesItem,
},
data: function () {
return {
axis: {
baseUnit: 'weeks',
},
testor: [
{
VisitCount: 13,
timestamp: '2018-01-01T00:00:00.000',
Date: new Date('2018-01-01T00:00:00.000'),
},
{
VisitCount: 13,
timestamp: '2018-01-01T00:00:00.000',
Date: new Date('2018-01-01T00:00:00.000'),
},
{
VisitCount: 13,
timestamp: '2018-01-05T00:00:00.000',
Date: new Date('2018-01-05T00:00:00.000'),
},
{
VisitCount: 50,
timestamp: '2018-02-01T00:00:00.000',
Date: new Date('2018-02-01T00:00:00.000'),
},
{
VisitCount: 13,
timestamp: '2018-04-01T00:00:00.000',
Date: new Date('2018-04-01T00:00:00.000'),
},
],
categories: [
1952, 1956, 1960, 1964, 1968, 1972, 1976, 1980, 1984, 1988, 1992, 1996,
2000, 2004, 2008, 2012,
],
tooltiptemplate: '#= series.name #: #= value #',
};
},
};
</script>
hi,
Why isn't the content displayed in the Timeline as wide as it actually is? I want this width to be displayed in proportion.
Hi,
I am trying to change the days of the week that appears at the top of the calendar in the Month view like "Monday, Tuesday" etc... . What I want is that when the screen becomes to small it will change to Mon, Tues, and so on.
As for the Week and WorkWeek Views I want to wrap the text at the top so show Mon on top and the date below when the screen gets smaller.
If there is a way to manipulate this area I would appreciate the help.
Thank you.
Hi Team,
I'm migrating a project that previously used the Vue wrapper component for the scheduler component to use the vue native component.
Using the wrapper component I could set the date property on the group. ie here (https://demos.telerik.com/kendo-ui/scheduler/date-grouping).
However it appears that date grouping is not available on the Vue native components. Is that correct or have I overlooked something?
EF.
hello,
How does the timeline component aggregate time on the same line,As shown in the figure:
web vue:
wpf:
hello,
I want to refresh the data dynamically, but when I bind the data and modify the data source, the data is not displayed completely, and sometimes it is not displayed at all.
Hi. I have one reactive object that holds the data for all of tabs in a tabstrip. I have dynamic fields in these tabs. For example, the selection of an autocomplete field in Tab A updates the data that is in a list box in Tab B. I'm not seeing the refresh of data when i navigate. The data is all loaded at once. How do I force a refresh of the tabs?
I've also tried using state management, but it's still not doing what I would like.
Hello,
I have a question, as I can't find the answer in the documentation. Can we use the LocalizationProvider to print localized custom string, in the same way we can do it with VueI18n plugin ? Or the Localization feature is only for the Kendo components ?