cocos creator 访问节点

本文介绍了在Cocos Creator中如何访问节点和组件。内容包括通过`this.node`获取组件所在节点,使用`getComponent`方法查找同一节点上的其他组件,以及在属性检查器中设置和获取其他节点及其组件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

cocos creator 访问节点

由于工作需要,开始学习cocos,应工作要求,以ts为主要语言编写,本节重点为代码方面。

1.访问节点和组件


获取组件所在的节点

问:或许是当前组件的节点?node.x = 100;这句代码的意义?
获得组件所在的节点很简单,只要在组件方法里访问 this.node 变量:

start: function () {
    var node = this.node;
    node.x = 100;
}

获得其它组件
你会经常需要获得同一个节点上的其它组件,这就要用到 getComponent 这个 API,它会帮你查找你要的组件。
start: function () {
    var label = this.getComponent(cc.Label);
    var text = this.name + 'started';

    // 改变label的值
    label.string = text;
}
也可以为 getComponent 传入一个类名。对用户定义的组件而言,类名就是脚本的文件名,并且区分大小写。例如 SinRotate.js 里声明的组件,类名就是 SinRotate。
var rotate = this.getComponent("SinRotate");

问:那要怎么寻找同一脚本里的组件?


2.获得其它节点及其组件

利用属性检查器设置节点

最直接的方式就是在 属性检查器 中设置你需要的对象。以节点为例,这只需要在脚本中声明一个 type 为 cc.Node 的属性:

// Cannon.js

cc.Class({
    extends: cc.Component,
    properties: {
        // 声明 player 属性
        player: {
            default: null,
            type: cc.Node
        }
    }
});

这段代码在 properties 里面声明了一个 player 属性,默认值为 null,并且指定它的对象类型为 cc.Node。这就相当于在其它语言里声明了 public cc.Node player = null;。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值