怎么及时获取准确的获取width?

节点如下

testNode 是一个node 下有一个label组件

testNode 绑定脚本 HelloWorld
HelloWorld 中 有 脚本

cc.Class({
extends: cc.Component,

properties: {

    setLabel:{
        default:999,
        notify:function(value){
            this._setLabel(value);
        }
    },
},

_setLabel:function(value){

    var label = cc.find("label",this.node);
    label.getComponent(cc.Label).string = value;

    this.node.width = label.width;
},

});

setLabel 和 _setLabel 目的是设置 testNode label组件的值,并设置testNode的width 等于 label的width
问题
1:如何通过testNode 的绑定脚本(Helloworld)设置label的默认值
2:设置testNode的width 等于 label的width 永远是设置上次的值(比如我设置两次setLabel值为999和9999 .testNode的width是会等于999的label的width 而不是9999的label的width,我在设为9 他又等于9999的width)上传中…
3: