QML: json为c++通过setContextProperty注册进去的实例,passJson为该实例的一个槽函数,如果不清楚请自行百度c++和qml的交互
var p = {
"url" : "127.0.0.1",
"data" : 23
}
json.passJson({
"url" : "127.0.0.1",
"data" : 23,
"country": "中国"
})
C++:可以通过QJSValue传递qml的Json变量,先转换成QVariant后转换成QJsonObject
void Json::passJson(QJSValue v)
{
QJsonObject jsonObject = v.toVariant().toJsonObject();
QString jsonString = QJsonDocument(jsonObject).toJson();
qDebug() << jsonString;
}