新的QML (特别是使用Felgo框架)。在较早的教程中,尝试做一些非常容易的事情,但似乎范围规则可能改变了(不太可能),或者我遵循的指令遗漏了什么。我在下面粘贴了简化代码:
import QtQuick 2.0
import Felgo 3.0
Page {
id: searchPage
Column
{
id: contentCol
AppTextField
{
id: search_input
showClearButton: true
placeholderText: qsTr("Search...")
inputMethodHints: Qt.ImhNoPredictiveText
onTextChanged: showRecentSearches()
}
Row
{
spacing:contentPadding
AppButton
{
text: qsTr("Go!")
onClicked: search()
enabled: true
}
}
}
function showRecentSearches()
{
console.debug(search_input.text);
}
}然而,当我运行它时,我得到了"ReferenceError: search_input未定义“。我知道如果我把它放在列大括号中,它就在作用域内;但是,如果我需要使这个全局化(正如我下面的教程所示),将它放在页面大括号中似乎会隐藏search_input id标记的作用域。
任何帮助都是非常感谢的!
发布于 2021-06-25 18:26:45
奇怪的是,通过重新启动,这个错误消失了。似乎id标记只在重新启动时才进行重新分析。
https://stackoverflow.com/questions/68135480
复制相似问题