在ember的控制器功能内访问控制器属性

时间:2019-05-22 05:05:18

标签: ember.js

无法访问控制器功能内的控制器属性

App.ViewRController = Ember.Controller.extend({
    datas:null,
    actions:{

    viewfile:function(){
        let filename = this.get('filename');
        let count=0;
        let data;
                let self = this;
        if (filename!=null)
        {
            filename=filename.trim();
            if(filename.length>0)
            {

                try{
                let obj= new XMLHttpRequest();
                obj.onreadystatechange=function(){
                if(obj.readyState==4 && obj.status ==200)
                    {

                        let json=obj.responseText;
                        console.log(self);
                        data = JSON.parse(json);
                        self.set(datas,data);


                    }

                }

                let params = "filename="+filename;
                obj.open("POST","view");
                obj.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
                obj.send(params);
                //this.set('datas',data);
                }
                catch(e){alert(e);}
            }
            else
                alert("enter filename");
            }
            else
                alert("enter filename");
        }

    }

模板应使用属性迭代datas对象。 但是我无法在控制器的函数中设置datas属性。

1 个答案:

答案 0 :(得分:0)

您尝试使用设置属性

//  || event->type()== QEvent::ShortcutOverride is the key point
if (event->type() == QEvent::KeyPress || event->type()== QEvent::ShortcutOverride)
{
    QKeyEvent *keyEvent = static_cast<QKeyEvent *>(event);
    if (keyEvent->matches(QKeySequence::Save))
    {
        // Do save
    }
}

但是您需要将“ datas”属性设置为字符串:

self.set(datas,data);