Создайте динамическое число AppCheckBoxes из Repeater QML / JS - PullRequest
1 голос
/ 01 октября 2019

Я хочу создать динамическое число AppCheckBox, основанное на ретрансляторе, проходящем через массив.

Мне удалось создать правильное количество ящиков, которые мне нужны, но я не могу теперь сделать text каждого AppCheckBox элемента массива, индексом которого является секция, мой текущийкод:

property var departments: ({"Reception", "Stylist", "Technical", "Assistant"})
property var repeater: []

Repeater {
    model: {
        for(var i in departments) {
            repeater.push(departments[i])
            }
            console.log("REPEATER LENGTH " + repeater + repeater.length)
            repeater.length;
        }
    AppCheckBox {
        anchors.horizontalCenter: parent.horizontalCenter
        text: {
            var i;
            for (i = 0; i < repeater.length; i++) {
                text = repeater[i] ;
                }
            }
        }
    }

Из приведенного выше примера кода я создаю либо 4 AppCheckBox с текстом в виде полного массива 4 раза, либо вместо 4 флажков конечного элемента массива (в данном случаеПомощник).

Как сделать текст из 4 различных элементов массива?

Спасибо!

1 Ответ

1 голос
/ 01 октября 2019

Вы можете установить "отделы" в качестве модели, если это список, а затем получить доступ к информации, используя свойство modelData:

property var departments: ["Reception", "Stylist", "Technical", "Assistant"]

Repeater {
    model: departments
    AppCheckBox {
        anchors.horizontalCenter: parent.horizontalCenter
        text: model.modelData
    }
}
...