属性别名自我引用?这个QML代码在做什么?

时间:2015-10-08 10:26:01

标签: qt qml qtquick2

所以我试图在Windows上使用maliit框架和键盘插件。可以找到原始来源herehere

我遇到了很多不同的问题,但我的问题是在下面的QML代码中使用QML属性db.actions.find({'type':'evMove','data.evId':'55fdaa53cca301f758f4023d'}) resultArray = { 55fdaa53cca301f758f4023d : 0, 55fdaa53cca301f758f4023g : 0 }; results.forEach(function(res){ resultArray[res.data.evMove]++; ); 。在我看来,alias title引用alias,但同时keyboard_title.text的{​​{1}}设置为keyboard_title { {1}}?对我来说似乎是循环的。这里到底发生了什么?

text

1 个答案:

答案 0 :(得分:1)

在我看来代码最初是这样的:

import QtQuick 2.5

Item {
    property alias layout: main.model
    property variant event_handler
    property bool area_enabled 
    property string title
    ...

    Item
    {
        ...
        Text {
            id: keyboard_title
            anchors.centerIn: parent

            text: title;
            ...
        }
    }
}

然后谁写了这个想法“嘿,使用别名而不是创建一个新的字符串属性可能是个好主意!”并继续编写现有代码,但忘记删除行text: title