cocos creator使用js动态创建toggle

大佬们,怎么用js动态生成一个toggle组件,我这样写不行

let node = new cc.Node(“node”);
// let label = node.addComponent(cc.Label);
// label.string = “aaaaa”;
node.width = 100;
node.height = 100;
node.x = 100;
node.y = 100;
let mytoggle = node.addComponent(cc.Toggle);
let unCheckedSpriteNode = new cc.Node(“unCheckedSpriteNode”);
unCheckedSpriteNode.x = node.x;
unCheckedSpriteNode.y = node.y;
unCheckedSpriteNode.width = node.width;
unCheckedSpriteNode.height = node.height;

    let unCheckedSprite = unCheckedSpriteNode.addComponent(cc.Sprite);
    unCheckedSprite.spriteFrame = this.unCheckedFrame;

    let checkedSpriteNode = new cc.Node("checkedSpriteNode");
    checkedSpriteNode.x = node.x;
    checkedSpriteNode.y = node.y;
    checkedSpriteNode.width = node.width;
    checkedSpriteNode.height = node.height;

    let checkedSprite = checkedSpriteNode.addComponent(cc.Sprite);
    checkedSprite = this.checkedFrame;

    var mask = new cc.Node();
    var mask_node = mask.addComponent(cc.Mask); // 真正的创建出 mask
    mask.x = checkedSpriteNode.x;
    mask.y = checkedSpriteNode.y;
    mask.width = checkedSpriteNode.width;
    mask.height = checkedSpriteNode.height;
    mask.parent = checkedSpriteNode
    
    mytoggle.normalSprite = this.unCheckedFrame;
    mytoggle.pressedSprite = this.unCheckedFrame;
    mytoggle.hoverSprite = this.unCheckedFrame;
    mytoggle.disabledSprite = this.unCheckedFrame;
    // mytoggle.checkMark = checkedSprite;
    mytoggle.node.on('toggle', this.callback, this);
    mytoggle.name = "js toggle";
    
    node.color = new cc.Color(255,0,0,0);
    // checkBox.background = this.unChecked;
    // checkBox.checkMark = this.checked;
    this.node.addChild(node);

可以点击,但是没有显示