Este es un fragmento de código de código en QML Itme que se supone que usa JavaScript directamente. Sin embargo, no puedo, por mi vida, averiguar qué está pasando.
let item = itemList.get(vmCurrentIndex); // itemList is a ModelList console.log(JSON.stringify(item)); console.log(("vmMetadata" in item)); console.log(("vmIndex" in item)); console.log(("vmText" in item)); console.log(("hasMouse" in item)); console.log(("something" in item)); console.log(("or" in item)); console.log(("other" in item));Los resultados de las pruebas anteriores son:
qml: {"vmText":"No protocol","vmIndex":0,"hasMouse":false} qml: true qml: true qml: true qml: true qml: true qml: true qml: trueLo cual no tiene sentido. solo vmIndex, vmText y hasMouse están en el elemento, todo lo demás debería haber devuelto falso. ¿Cómo es esto posible? Si no puedo usar el operador in, ¿cómo puedo probar si una clave está presente en un objeto javascript?