У меня есть следующий обратный вызов в полимерном элементе, который должен только срабатывать, когда данные принимаются с определенным значением dataid
.Конфликт в обратном вызове?
Polymer({
is: 'widget-singlevalue',
properties: {
dataid: {
type: String
},
value: {
type: String,
value: 'Loading'
},
sparks: {
type: Object,
value: []
}
},
ready: function() {
console.log(this.dataid);
var self = this;
registerCallback(this.dataid, function (data) {
var y = data.data[0];
var i = y[Object.keys(y)[0]];
self.push('sparks', i);
console.log(self.dataid + ": " + self.sparks);
self.value = i;
});
}
});
элементы:
<widget-singlevalue name="Retrieves Per Minute" dataid="AvgRetPerMin"></widget-singlevalue>
<widget-singlevalue name="Total" dataid="Total"></widget-singlevalue>
value
кажется всегда быть правым, однако, когда я смотрю на sparks
массивы на каждом виджете/элемент, они смешиваются. Вот мой текущий консольный вывод:
AvgRetPerMin: 63.81,63.81,14891940,14891940,57.67,57.67,14892034,14892034,57.33,57.33
Total: 63.81,14891940,14891940,57.67,57.67,14892034,14892034,57.33,57.33,14892034
Total.Sparks должны всегда иметь значения в пределах 14 миллионов, другие должны быть двузначными цифрами с запятой.
не может реально помочь вам с количеством информации, представленной в этом вопросе. Но некоторые ошибки, которые я нашел в вашем коде, - это тип 'sparks' - это' Object', но значение 'Array'. Поэтому измените тип 'sparks' на' Array' и для обоих массивов и объектов используйте функцию для возврата значения (рекомендация полимера) 'значение: function() {return []}' – a1626
Ничего себе, поэтому исправление этих двух вещей фактически кажется исправленным проблема. Угадайте, что вам больше не нужна информация! :) Можете ли вы разместить ответ, пожалуйста? –