cc.Component 的使用
1、组件入口函数,常有的:onLoad,start,update
//组件在加载的时候运行,并且场景的初始化工作已经完成
onLoad() {
},
//组件在第一次update调用之前调用
start() {
},
//每次游戏刷新的时候调用,dt距离上一次刷新的时间,画面更新前调用
update(dt) {
},
//画面更新后调用
lateUpdate(dt) {
},
//组件被激活的时候调用
onEnable() {
},
//组件被禁用的时候调用
onDisable() {
},
//组件实例被销毁的时候调用
onDestroy() {
}
2、组件的重要属性
在组件里面
this=>当前运行的组件实例,
this.node=>组件所挂载的节点对象
this.name=>组件实例所挂载节点的名称<组件名称>
this.node.name=>组件实例所挂载的名称
properties属性列表

properties: {
//基本数据类型:数值,字符串,布尔值
speed: 100,
is_debug: false,
string: '',
//color,pos,size
color: cc.color(0, 0, 0, 255),
pos: cc.v2(0, 0),
size: cc.size(100, 100),
//系统组件
/*
组件{
type:组件类型 //cc.Sprite, cc.Label
default:null //值可以是null || [] 前者表示一个值,后者则可以挂载多个组件
}
*/
my_con: {
type: cc.Sprite,
default: null
},
//自定义的属性,步骤
/*
首先要在场景上绑定js组件,
在需要用到的JS文件里引入模块 如 let test=require('test');
在properties里面进行声明如下
*/
my_test: {
type: test,
default: null
}
},
3、组件的操作

注意:以上方法在this下可以调用,同时在this.node节点下也是可以被调用的,并且如果有绑定的脚本,那么可以利用getComponent来获取这个脚本,并且可以运行脚本里面暴露出来的API
let item = this.node.getChildByName('bg');
let sp = set.getComponent(cc.Sprite);
console.log(sp);
//输出 cc_Sprite {_super: null, _name: "", _objFlags: 57344, node: cc_Node, __scriptAsset: false, …}
4、shedule 定时器操作

let item = this.my_con.node;
//注意被删除的组件,被隐藏的,没有被激活的组件是不会执行定时器的
//执行一次
this.scheduleOnce(function () {
console.log(this);
}.bind(item), 1);
//指定次数以及执行时间的定时器,执行2次,注意:次是为n+1次
this.schedule(function () {
console.log('are you ok???');
}.bind(item), 1, 1, 0);
//永远执行,如果省略了后面的参数,那么也就是默认永远执行
this.schedule(function () {
console.log('are you ok???');
}.bind(item), 1, cc.macro.REPEATE_FOREVER, 0); let test = function () {
console.log('today is good day');
console.log(this);
//unscheduleAllCallbacks 取消全部的定时器操作
// this.unscheduleAllCallbacks();
}.bind(this);
//执行定时器
this.schedule(test, 1);
//5秒后取消指定的定时器
this.scheduleOnce(function () {
this.unschedule(test);
}.bind(this), 5);
cc.Component 的使用的更多相关文章
- <8>Cocos Creator组件开发cc.Component
1.组件简介 组件是Cocos Creator的主要构成,渲染(场景显示内容).逻辑.用户输入反馈.计时器等等几个方面都是由组件完成的.根据Cocos Creator的总体架构,组件和节点配合完成游戏 ...
- cc.Component
组件入口函数1: onLoad: 组件加载的时候调用, 保证了你可以获取到场景中的其他节点,以及节点关联的资源数据;2: start: 也就是第一次执行 update 之前触发;3: update(d ...
- cc.Lable组件,RichText组件,AudioSouce组件的使用
一.cc.Lable组件的使用 1.创建Label的方法 a.通过菜单直接创建Label组件:b.先创建节点,然后在节点上绑定Label组件即可. 2.Label 面板上的属性 String => ...
- Cocos Creator cc.Button (脚本事件内容)
cc.Class({extends: cc.Component,properties: {}, onLoad: function () { var clickEventHandler = new cc ...
- Cocos Creator cc.Event点击触摸事件详解
cc.Event事件请不要直接创建 cc.Event 对象,因为它是一个抽象类,请创建 cc.Event.EventCustom 对象来进行派发. cc.Class({extends: cc.Comp ...
- cc.Button
cc.Button 1:添加按钮的方法 (1)直接创建带Button组件的节点; (2)先创建节点,再添加组件;2:按钮组件, 按钮是游戏中最常用的组件, 点击然后响应事件;3: 按钮的过渡效果: ...
- cc.Node—场景树
对于cc.Node我分了四个模块学习: 1.场景树,2.事件响应,3.坐标系统,4.Action的使用:在此记录经验分享给大家. 场景树 1: creator是由一个一个的游戏场景组成,通过代码逻辑来 ...
- cocos学习笔记:快速上手
cc.Class({ //奇怪的语法风格,cc.class, extends: cc.Component, //扩展自cc.Component properties: { //类的属性设置 jumpH ...
- ccc 多点触控2
经过不断的思考发现,如果是两个sprite都添加触控的时候,往往直接成单点触控, 但是如果是两个node的时候在node上面点击就会变成多点触控的形式 cc.Class({ extends: cc.C ...
随机推荐
- Git各个状态之间转换指令总结
基本状态标识 A- = untracked 未跟踪 A = tracked 已跟踪未修改 A+ = modified - 已修改未暂存 B = staged - 已暂存未提交 C = committe ...
- Python——字典操作
一.取出字典中所有的key-value student={'name':'xiaoming','age':11,'school':'tsinghua'} for key,value in studen ...
- faster-rcnn原理讲解
文章转自:https://zhuanlan.zhihu.com/p/31426458 经过R-CNN和Fast RCNN的积淀,Ross B. Girshick在2016年提出了新的Faster RC ...
- mybatis返回结果封装为map的探索
需求 根据课程id 列表,查询每个课程id的总数,放到一个map里 最简单的就是循环遍历,每一个都查询一次网上说mybatis可以返回Map 和 List<Map>两种类型 尝试 直接返回 ...
- latex 一些使用
texlive安装 https://blog.csdn.net/qq_38386316/article/details/80272396 管理员权限打开.bat 语言的安装可以减少 texwork 一 ...
- MySQL 导入导出数据库、表
使用 GUI 软件很好操作,下面介绍命令行操作. 导出 cmd 命令 # 1.1 导出整个数据库 mysqldump -hlocalhost -uroot -p student_db > C:\ ...
- 【Sql Server】SQL SERVER 收缩日志
事务日志记录着在相关数据库上的操作,同时还存储数据库恢复(recovery)的相关信息. 收缩日志的原因有很多种,有些是考虑空间不足,有些则是应用程序限制导致的. 下面介绍的是在简单模式下,进行收缩操 ...
- 金融量化分析【day110】:金融基础知识
一.股票 股票: 股票是股份公司发给出资人的一种凭证,股票的持有者就是股份公司的股东. 股票的面值与市值 面值表示票面金额 市值表示市场价值 上市/IPO: 企业通过证券交易所公开向社会增发股票以募集 ...
- Hive SQL 分类
题目: 请使用Hive SQL实现下面的题目. 下面是一张表名为user_buy_log的表,有三个字段,user(用户),grp(分组编号),time(购物时间). 需要将用户按照grp分组,对ti ...
- Tomcat——目录结构
Tomcat目录结构:1. 一级目录 bin ——Tomcat执行脚本目录conf ——Tomcat配置文件lib ——Tomcat运行需要的库文件(JARS)logs ——Tomcat执行时的LOG ...