Autor Zpráva
pp
Profil *
Ve frame 1 mam tuto akci:

---- FRAME 1 -------------
import Balicek.Config;

var config:Config = new Config();
trace(config.confRecord['loadURL']);


V externim souboru:
---- Config.as ------------

class Balicek.Config {
var confRecord:Array;


function Config() {
var confReader:XML = new XML();
this.confRecord = new Array();
confReader.onLoad = function(success:Boolean) {
this.confRecord['loadURL'] = '10';
}

confReader.load('file.xml');

}

}

Dokaze mi nekdo poradit proc ten trace na 4. radku vypise undefined namisto '10' kterou vkladam v konstruktoru? Ve skutecnosti plnim to pole daty z file.xml, ale takle to tu chybu dela take.

Konstruktor normalne probehne - kdyz v nem dam nejake vypisy, tak to vypisuje spravne.
mik
Profil
function Config() {
var confReader:XML = new XML();
this.confRecord = new Array();
confReader.onLoad = function(success:Boolean) {

// tady mas problem
// this nedkazuje na objekt config ale na objekt confReader
// protoze je to jako confReader.confRecord['loadURL']=10
// coz je spatne, protoze potrebujes aby to lezlo do objektu config
//
this.confRecord['loadURL'] = '10';
//
//
}
confReader.load('file.xml');


tady mas prepis spravne:

function Config() {
var confReader:XML = new XML();

//odkaz na sebe sama
var ref:Config = this;

this.confRecord = new Array();
confReader.onLoad = function(success:Boolean) {

//vkladej do objektu ref (odkaz na objekt config)
ref.confRecord['loadURL'] = '10';

}

confReader.load('file.xml');

}
Toto téma je uzamčeno. Odpověď nelze zaslat.

0