ココスクリエーターレコード7 - グローバル変数

グローバル変数

すべてのプラグインスクリプトは、通常のスクリプトの前にロードすることが保証されているので、そのプラグインをロードするだけでなく、あなたはまた、いくつかの特別なグローバル変数を宣言するために、この機能を使用することができます。あなたは、プロジェクト内のスクリプトを追加し、「インをプラグインするインポート」を設定することができます:

/ * * Globals.js /

// 定义新建组件的默认值
window.DEFAULT_IP = "192.168.1.1";

// 定义组件开关
window.ENABLE_NET_DEBUGGER = true;

// 定义引擎 API 缩写(仅适用于构造函数)
window.V2 = cc.Vec2;
接下来你就能在任意的普通脚本中直接访问它们:

/* network.js */

cc.Class({
    extends: cc.Component,
    properties: {
        ip: {
            default: DEFAULT_IP
        }
    }
});
/* network_debugger.js */

if (ENABLE_NET_DEBUGGER) {
    // ENABLE_NET_DEBUGGER 时这个组件才生效
    cc.Class({
        extends: cc.Component,
        properties: {
            location: {
                default: new V2(100, 200)
            }
        },
        update: function () {
            ...
        },
    });
}
else {
    // 否则这个组件什么也不做
    cc.Class({
        extends: cc.Component,
        start: function () {
            // 在开始后就移除该组件
            this.destroy();
        }
    });
}

標準ネットワークインターフェース

ココスクリエーターでは、我々は、最も広く使用されているWebプラットフォーム上の標準的なネットワーク・インタフェースをサポートしています。

XMLHttpRequestの:短い接続用
のWebSocket:長い接続のためには
、当然のことながら、元のブラウザに恵まれWebプラットフォームは、その理由を両方のインターフェイスをサポートするココスクリエーターのサポート、あなたはネイティブバージョンを公開するときので、これら2つのネットワークインターフェイスのユーザーコードも実行することができます。それは、「ソース、マルチプラットフォームが」ココスの原則に付着されているに従うことです。

使用

XMLHttpRequest 简单示例:

 var xhr = new XMLHttpRequest();
 xhr.onreadystatechange = function () {
     if (xhr.readyState == 4 && (xhr.status >= 200 && xhr.status < 400)) {
         var response = xhr.responseText;
         console.log(response);
     }
 };
 xhr.open("GET", url, true);
 xhr.send();

開発者は、直接接続オブジェクトを作成する)(新規のXMLHttpRequestを使用することができ、それも)cc.loader.getXMLHttpRequest(によって作成することができ、両方一貫効果。

文書標準のXMLHttpRequestを参照してくださいMDN中国の文書

WebSocketを

簡単な例:

 ws = new WebSocket("ws://echo.websocket.org");
 ws.onopen = function (event) {
     console.log("Send Text WS was opened.");
 };
 ws.onmessage = function (event) {
     console.log("response text msg: " + event.data);
 };
 ws.onerror = function (event) {
     console.log("Send Text fired an error");
 };
 ws.onclose = function (event) {
     console.log("WebSocket instance closed.");
 };

 setTimeout(function () {
     if (ws.readyState === WebSocket.OPEN) {
         ws.send("Hello WebSocket, I'm a text message.");
     }
     else {
         console.log("WebSocket instance wasn't ready...");
     }
 }, 3);

WebSocketの標準文書は、参照してくださいMDN中国の文書を

おすすめ

転載: blog.csdn.net/zhengjuqiang/article/details/80843024