Pregunta

enyo.kind({
name: "TestDialog",
kind: enyo.VFlexBox,
components: [
    {kind: "ApplicationEvents", onLoad: "openDialog"},
    {kind: "ModalDialog", name: "errorDialog", caption: "Error!", components: [
        {kind: "HFlexBox", layoutKind: "HFlexLayout", pack: "center", components: [
            {content: "Oh no!", name: "errorMessage", style: "margin: 20px 0px;", className: "enyo-text-error warning-icon"}
        ]},
        {kind: "Button", caption: "OK", onclick: "closeErrorDialog"}
    ]}
],
openDialog: function() {
    this.$.errorMessage.setContent("This is a sample error message");
    this.$.errorDialog.openAtCenter();
}});

No puedo entender cómo establecer el contenido de esto. $. ErrorMessage.
Si comento la línea que intenta establecer el contenido de esto. $. ErrorMessage, el diálogo se muestra correctamente con el contenido original. ¿Qué estoy haciendo mal?

Nota: alert(this.$.errorDialog) pantallas enyo.ModalDialog Como se esperaba, pero
alert(this.$.errorMessage) pantallas undefined. Esto es cierto para todos los demás componentes de this.$.errorMessage también.

¿Fue útil?

Solución

En realidad, edité mi respuesta:

Ese control no existirá mientras el cuadro de diálogo esté cerrado a menos que especifique perezoso: falso para el modaldialog. O puede hacer el .setContent () después del .openatcenter ()

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top