"use strict"; cc._RF.push(module, '59ec0tOcPVInpZDZHtVKozs', 'bridge.jumper.window'); // Scripts/zbridge/cmps/bridge.jumper.window.js "use strict"; /****************************************************************** * Copyright(C) 2019 - 2020 Nx Studio * * 功能/窗体跳转按钮 * * 2018.05.18 ******************************************************************/ var TDefine = require("trace.define"); var TTT = TDefine.TraceType; cc.Class({ "extends": cc.Component, properties: { wndName: { "default": "", displayName: "窗体名" }, sourceId: { "default": 0, displayName: "来源(功能)编号" }, param1: { "default": "", displayName: "参数(p1)" }, param2: { "default": "", displayName: "参数(p2)" }, touchAudio: { "default": null, type: cc.AudioClip, displayName: "触摸音" }, interval: { "default": 0.2, displayName: "点击间隔(秒)" }, // 埋点 idType: { "default": TTT.btnClicked, type: TTT, displayName: "埋点类型" }, btnName: { "default": "", displayName: "按钮名" } }, // 编辑器特性 editor: { // requireComponent 参数用来指定当前组件的依赖组件 requireComponent: cc.Button, // menu 用来将当前组件添加到组件菜单中,方便用户查找 menu: "老版桥接/功能(窗体)跳转" }, // 显示 onEnable: function onEnable() { this.node.on("click", this.onClicked, this); }, // 隐藏 onDisable: function onDisable() { this.node.off("click", this.onClicked, this); }, // 点击 onClicked: function onClicked() { // 音效 if (this.touchAudio) { nx.audio.playSFX(this.touchAudio, false); } // 点击间隔 var now = cc.sys.now(); if (typeof this.lastClickTime == "number") { var ms = this.interval * 1000; if (now - this.lastClickTime < ms) { return; } } this.lastClickTime = now; var args = { p1: this.param1, p2: this.param2 }; // 直接打开 if (nx.dt.strNEmpty(this.wndName)) { nx.bridge.createPanel(this.wndName, args); return; } // 跳转 var sid = parseInt(this.sourceId); if (nx.dt.numGood(sid)) { nx.bridge.jumper.jump2Window(sid, args); } else { nx.bridge.jumper.jump2WindowByKey(sid, args); } // 埋点 if (nx.mTrace && this.idType > 0 && nx.dt.strNEmpty(this.btnName)) { nx.mTrace.trace(this.idType, this.btnName); } } }); cc._RF.pop();