2

QML に JSONListModel を使用しているため、このJSON ファイルの解析に助けが必要です

これは、オンライン プレイヤーの名前を取得する Minecraft サーバー クエリです。ただし、各ノードを List デリゲートに追加するのに問題があります。

これは私のコードです:

ListView {
    JSON.JSONListModel {
        source: "http://minecraft-api.com/v1/players/?server=darkcrest.cf.gs"
        query: "$['players'][*]"
        id: playerNames
    }

    anchors.top: players.bottom
    anchors.topMargin: units.gu(1)

    model: playerNames.model

    delegate: Item {
        Text {
            text: model
        }
    }
}

ご覧のとおり、クエリがあります。これは、表示したい要素への JSONPath です。

私が取得したいのは、プレーヤーの名前です。ワイルドカードを使用してすべての名前を取得しましたが、テキストのテキストをモデル ("$['players'][0-x]") に設定すると、次のようになります。

file:///home/brendan/UTouch-Apps/ServerStatus/JSONListModel/JSONListModel.qml:15:32: QML ListModel: append: value is not an object

次の行を指します。

property ListModel model : ListModel { id: jsonModel }

JSONListModel.qml 内。

そうそう、私は私の道が間違っていると推測しています。リンク先のJSONファイルにあるような配列の扱い方がわかりません。

ファイルが次のようなものである場合:

{
    players: [
         "name": "Whatever1234",
         "name": "Person987"
    ]
}

私はちょうどすることができました

text: model.name

しかし、ノードに名前がないため、できません。それらは単なる値です。

誰かが私を助けることができますか?

4

1 に答える 1