iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >CocosCreator学习之模块化脚本
  • 543
分享到

CocosCreator学习之模块化脚本

2024-04-02 19:04:59 543人浏览 八月长安
摘要

Cocos Creator模块化脚本 Cocos Creator 允许你将代码拆分成多个脚本文件,并且让它们相互调用。这个步骤简称为 模块化。 模块化使你可以在 Cocos Crea

Cocos Creator模块化脚本

Cocos Creator 允许你将代码拆分成多个脚本文件,并且让它们相互调用。这个步骤简称为 模块化。

模块化使你可以在 Cocos Creator 中引用其它脚本文件:

  • 访问其它文件导出的参数
  • 调用其它文件导出的方法
  • 使用其它文件导出的类型
  • 使用或继承其它 Component

Cocos Creator 中的 javascript 使用和 node.js 几乎相同的 Commonjs 标准来实现模块化,简单来说:

  • 每一个单独的脚本文件就构成一个模块
  • 每个模块都是一个单独的作用域
  • 以 同步 的 require 方法来引用其它模块
  • 设置 module.exports 为导出的变量

当你在脚本中声明了一个组件,Creator 会默认把它导出,其它脚本直接 require 这个模块就能使用这个组件。


// Rotate.js

cc.Class({
   extends: cc.Component,
   // ...
}); SinRotate.js

// SinRotate.js

var Rotate = require("Rotate");

var SinRotate = cc.Class({
    extends: Rotate,
    update: function (dt) {
        this.rotation += this.speed * Math.sin(dt);
    }
});

模块里不单单能定义组件,实际上你可以导出任意 JavaScript 对象。假设有个脚本 config.js


// config.js - v2

var cfg = {
    moveSpeed: 10,
    version: "0.15",
    showTutorial: true,

    load: function () {
        // ...
    }
};
cfg.load();

module.exports = cfg;

现在如果我们要在其它脚本中访问 cfg 对象:


// player.js

var config = require("config");
cc.log("speed is", config.moveSpeed);

module.exports 的默认值:
当你的 module.exports 没有任何定义时,Creator 会自动优先将 exports 设置为脚本中定义的 Component。如果脚本没定义 Component 但是定义了别的类型的 CCClass,则自动把 exports 设为定义的 CCClass。

导出变量

module.exports 默认是一个空对象({}),可以直接往里面增加新的字段。


// foobar.js:

  module.exports.foo = function () {
      cc.log("foo");
  };
  module.exports.bar = function () {
      cc.log("bar");
  };

// test.js:

  var foobar = require("foobar");
  foobar.foo();    // "foo"
  foobar.bar();    // "bar"

module.exports 的值可以是任意 JavaScript 类型。


// foobar.js:

  module.exports = {
      FOO: function () {
          this.type = "foo";
      },
      bar: "bar"
  };

// test.js:

  var foobar = require("foobar");
  var foo = new foobar.FOO();
  cc.log(foo.type);      // "foo"
  cc.log(foobar.bar);    // "bar"

以上就是CocosCreator学习之模块化脚本的详细内容,更多关于CocosCreator模块化脚本的资料请关注编程网其它相关文章!

--结束END--

本文标题: CocosCreator学习之模块化脚本

本文链接: https://www.lsjlt.com/news/123817.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • CocosCreator学习之模块化脚本
    Cocos Creator模块化脚本 Cocos Creator 允许你将代码拆分成多个脚本文件,并且让它们相互调用。这个步骤简称为 模块化。 模块化使你可以在 Cocos Crea...
    99+
    2024-04-02
  • 怎么在CocosCreator中模块化脚本
    怎么在CocosCreator中模块化脚本?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Cocos Creator模块化脚本Cocos Creator 允许你将...
    99+
    2023-06-14
  • Python模块学习之IPy模块
    IP地址规划是网络设计中非常重要的一个环节,规划的好坏会直接影响路由协议算法的效率,包括网络性能、可扩展性等方面,在这个过程当中,免不了要计算大量的IP地址,包括网段、网络掩码、广播地址、子网数、IP类型等。Python提供了一个强大的第...
    99+
    2023-01-31
    模块 Python IPy
  • Python学习之MySQLdb模块
    CentOS下安装sudo yum install MySQL-python可以参考http://www.mikusa.com/python-mysql-docs/index.html  获取更多信息MySQL-python 为Python...
    99+
    2023-01-31
    模块 Python MySQLdb
  • python学习之argparse模块
    一、简介:argparse是python用于解析命令行参数和选项的标准模块,用于代替已经过时的optparse模块。argparse模块的作用是用于解析命令行参数,例如 python parseTest.py input.txt outpu...
    99+
    2023-01-31
    模块 python argparse
  • python模块之paramiko学习<
    简介: paramiko是python(2.2或更高)的模块,遵循SSH2协议实现了安全(加密和认证)连接远程机器。 安装所需软件包: http://ftp.dlitz.net/pub/dlitz/crypto...
    99+
    2023-01-31
    模块 python paramiko
  • Python学习之PyYaml模块
    我需要解析twemproxy的配置文件中的pool和后端的redis主机。采用shell解析yml文件太麻烦,正好python有正对于yaml文件解析的pyyaml模块例如twemporxy的配置文件nutcracker.yamlalpha...
    99+
    2023-01-31
    模块 Python PyYaml
  • python之web模块学习-- url
      下面继续学习python的web模块 ---  urllib2,一个源于urllib又高于urllib的模块。1  urllib2 简介    urllib2是python自带的一个访问网页及本地文件的库。    与urllib相比,显...
    99+
    2023-01-31
    模块 python web
  • Django模块学习之模块语言详解
    目录前言1、变量2、注释3、过滤器4、标签:include5、标签:for6、标签:if总结前言 Django模块引擎支持Django模块语言(简称DTL)。DTL包含变量、注释、过...
    99+
    2024-04-02
  • python之web模块学习-- htt
    1  httplib简介httplib 是python中http协议的客户端实现,可以使用该模块来与 HTTP 服务器进行交互    httplib是一个相对底层的http请求模块,其上有专门的包装模块,如urllib内建模块,goto等第...
    99+
    2023-01-31
    模块 python web
  • Python学习笔记之json模块和pickle模块
    目录json模块序列化与反序列化json模块中的方法pickle模块总结json模块 json用于不同语言之间的数据交换,比如C和Python之间等等,即可跨语言。而pickle只能...
    99+
    2023-05-18
    json模块 pickle模块 python各个模块讲解
  • 小白学习Python之路---re模块学
    本节大纲:   1.正则表达式   2.re模块的学习   3.速记理解技巧   4.挑战练习--开发一个简单的python计算器   5.心得总结   6.学习建议     正则表达式:   正则表达式,又称规则表达式。(英语:Regu...
    99+
    2023-01-31
    之路 模块 Python
  • python模块学习----nmap模块
    安装nmap模块:pip install python_nmanmap模块说明:python-nmap是一个帮助使用nmap端口扫描器的python库。它允许轻松操纵nmap扫描结果,并且将是一个完美的选择,为需要自动完成扫描任务的系统管理...
    99+
    2023-01-31
    模块 python nmap
  • Python学习之日志模块详解
    目录日志的作用日志的等级logging 模块的使用logging 模块演示小案例OK,今天我们来学习一下 python 中的日志模块,日志模块也是我们日后的开发工作中使用率很高的模块...
    99+
    2024-04-02
  • Node学习之聊聊模块系统
    Node.js 中存在 4 类模块(原生模块和3种文件模块) 例:var http = require("http");Node.js 中自带了一个叫做 http 的模块,我们在我们的代码中请求它并把返回值赋给一个本地变...
    99+
    2023-05-14
    node.js模块
  • Python学习之包与模块详解
    目录什么是 Python 的包与模块包的身份证如何创建包创建包的小练习包的导入 - import模块的导入 - from…import导入子包及子包函数的调用导入主包及...
    99+
    2024-04-02
  • Python学习之模块化程序设计示例详解
    目录关于模块化程序设计水果仓库功能简介主功能实现与程序入口实现添加功能实现列出所有信息功能实现查询信息功能实现删除信息功能完整程序如下关于模块化程序设计 什么是模块化程序设计? 程序...
    99+
    2024-04-02
  • Python学习笔记7——文本、模块
    参考书籍:《Learning_Python_5th_Edition.pdf》,一本英文书呢,我上传到百度网盘吧,请点击这里,密码是:kym3 文本文件的输入输出 Python具有基本的文本文件读写功能。Python的标准库提供有更丰富的读...
    99+
    2023-01-30
    学习笔记 模块 文本
  • Python 模块学习
        模块学习: http://wsyht90.blog.51cto.com/9014030/1845737 1、getpass 2、os 3、sys 4、subprocess 5、hashlib 6、json 7、pickle 8、sh...
    99+
    2023-01-31
    模块 Python
  • python模块学习
    系统相关的信息模块: import sys sys.argv 是一个 list,包含所有的命令行参数. sys.stdout sys.stdin sys.stderr 分别表示标准输入输出,错误输出的文件对象. sys.st...
    99+
    2023-01-31
    模块 python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作