由于使用return使控件离开代码块,因此最佳实践是确保首先处理所有特殊情况。
在您的情况下,将最后一张支票移到该块的顶部,例如:
ButtonStyle {
padding.top: 0
padding.bottom: 0
padding.right: 0
padding.left: 0
background: Rectangle {
implicitHeight: enableButton.height
implicitWidth: enableButton.width
color: {
if (propertyButton.pressed) // moved up from below if-else block
return selectedBgColor //
if ((buttonEnabled || hoverAlways) && enabled) {
if (propertyButton.hovered)
return hoveredBgColor
else
return defaultBgColor
} else {
return selectedBgColor
}
}
}
}