我刚刚意识到(根据一些QML Bugreport),ListView的JSON代理缺失了 . 所以我有两个选择,用Javascript或C创建的模型填充它
特别是我需要从预定义的URL下载.json数据并将它们解析为ListView .
我试图在Javascript中创建对象数组并将关联数组推送到ListView作为模型,但它失败了 . 无论我如何修改代码 .
那么只有C解决方案或我可以通过Javascript制作ListView模型吗?
谢谢
我试过的代码:
return [{"name":"value"}]
return {"name":"value"}
return [["name","value"]]
问题始终如一: ReferenceError: Can't find variable: name
3 回答
根据mouli@irc.freenode.net#qt的建议,请执行以下操作:
文件:gui.qml
file:script.js
呼叫:
这可能有点晚了,但是使用Qt 5.5(可能更早,但测试5.5)你可以做到以下几点:
让我们假设您有一个这样的数组:
var dataArray = [{"name":"A"},{"name":"B"},{"name":"C"}]
QML中的代码显示此模型:
将为代表提供
index
. 它是模型中当前项的索引 . 有关更多信息,请参见ListView delegate property .使用Component.onCompleted要容易得多: