Qml 如何别名日期对象属性?
我在尝试声明只读属性别名时遇到问题 内部Qml 如何别名日期对象属性?,qml,qt5,qtquick2,Qml,Qt5,Qtquick2,我在尝试声明只读属性别名时遇到问题 内部var(实际上是Date对象)。这里有一个例子 在我的笔记本电脑上复制它: import QtQuick 2.0 Rectangle { width: 100 height: 62 color: time.getTime() === internal.time.getTime() ? "green" : "red" readonly property alias time: internal.time onTi
var
(实际上是Date
对象)。这里有一个例子
在我的笔记本电脑上复制它:
import QtQuick 2.0
Rectangle {
width: 100
height: 62
color: time.getTime() === internal.time.getTime() ? "green" : "red"
readonly property alias time: internal.time
onTimeChanged: {
if (typeof time === "undefined") return
console.log("time:", Qt.formatDateTime(time), time.getTime())
console.assert(time.getTime() === internal.time.getTime(), "not
equal")
}
Component.onCompleted: internal.time = new Date(1403621359000)
QtObject {
id: internal
property var time: undefined
}
}
“外部时间”属性报告的值实际上是严格意义上的一个小时
早些时候,是什么让我得出这样一个结论:或许,可以节省一天的时间
其机制可能与此有关
如果用var
替换alias
,则该值与预期值相同
有什么我应该注意的陷阱吗?什么会导致这样的结果
行为?人们的期望是alias不应该做任何事情
转换/对别名值的转换