• 运行环境
  • 保留标识符 cc

    运行环境

    Cocos Creator 3D 引擎的 API 都存在于模块 cc中,使用标准的 ES6 模块导入语法将其导入:

    1. import {
    2. Component, // 导入类 Component
    3. _decorator, // 导入命名空间 _decorator
    4. } from "cc";
    5. import * as cc from "cc"; // 将整个 Cocos Creator 3D 模块导入为命名空间 Cocos Creator 3D
    6. @_decorator.ccclass("MyComponent")
    7. export class MyComponent extends Component {
    8. public v = new cc.Vec3();
    9. }

    保留标识符 cc

    注意,由于历史原因,cc 是 Cocos Creator 3D 保留使用的标识符,其行为相当于在任何模块顶部已经定义了名为 cc 的对象。因此,你不应该将 cc 用作任何全局对象的名称:

    1. /* const cc = {}; // 每个 Cocos Creator 3D 脚本都等价于在此处含有隐式定义 */
    2. import * as cc from "cc"; // 错误:命名空间导入名称 cc 由 Cocos Creator 3D 保留使用
    3. const cc = { x: 0 };
    4. console.log(cc.x); // 错误:全局对象名称 cc 由 Cocos Creator 3D 保留使用
    5. function f () {
    6. const cc = { x: 0 };
    7. console.log(cc.x); // 正确:cc 可以用作局部对象的名称
    8. const o = { cc: 0 };
    9. console.log(o.cc); // 正确:cc 可以用作属性名
    10. }
    11. console.log(cc, typeof cc); // 错误:行为是未定义的