#qt #qml
#qt #qml
Вопрос:
Не удается создать объект в списке.
Мне нужно, чтобы последние запросы отображались в списке «Недавние». После отправки я сохраняю запрос в массиве listOfRecents.
Проблема в том, что я не могу создать объект списка, взяв данные из этого массива. Ниже приведены фрагменты кода и ошибка.
Вот код со списком:
Pa&e {
id: serv
title: qsTr("Recent")
function addRecent()
{
inRecentList.clear()
for(var i = 0; i < listOfRecents.len&th; i)
{
var temp = listOfRecents[i];
inRecentList.append({innin&Data: listOfRecents[i],
innin&Show: listOfRecents[i]})
temp = inRecentList[i].innin&Data
temp = ""
}
}
Component.onCompleted: {
addRecent()
}
ListView {
id: inRecent
x: 5
y: 5
width: parent.width - 10
hei&ht: parent.hei&ht - 50
spacin&: 2
dele&ate: RecentItem {
isData: innin&Data
isShow: innin&Show
}
model: ListModel {
id: inRecentList
}
}
}
Вот недавний код TEM:
Item {
id: innin&
property strin& isShow: ""
property strin& isData: ""
hei&ht: 32
width: inRecent.width
Button
{
hei&ht: parent.hei&ht
width: parent.width
Row {
anchors.fill: parent
spacin&: 10
Ima&e {
id: im&
source: "Res/ima&es/ui_elements/query.pn&"
}
Text {
text: isShow
font{
bold: true
italic: true
pixelSize: 24
}
}
}
onClicked: {
stackView.pop()
stackView.pop()
sTextToRecent(isData)
}
}
}
В консоли выдается следующая ошибка:
qrc:/Recent.qml:19: TypeError: Cannot read property 'innin&Data' of undefined
qrc:/Recent.qml:41: ReferenceError: innin&Show is not defined
qrc:/Recent.qml:40: ReferenceError: innin&Data is not defined
Ответ №1:
Я полагаю, единственное, чего вам не хватает, это того, что вы пытаетесь неправильно прочитать из модели. Вместо этого:
temp = inRecentList[i].innin&Data
сделайте это:
temp = inRecentList.&et(i).innin&Data