From 5ae506a81792f0f8b3bbed16444e0155ef4a2453 Mon Sep 17 00:00:00 2001 From: cebgcontract <99630598+cebgcontract@users.noreply.github.com> Date: Wed, 29 Jun 2022 11:58:13 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=B8=80=E4=B8=AA=E5=9C=A8na?= =?UTF-8?q?tive=E8=BF=90=E8=A1=8Cjs=E4=BB=A3=E7=A0=81=E7=9A=84=E6=96=B9?= =?UTF-8?q?=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cocos/scripting/js-bindings/manual/jsb_global.cpp | 5 +++++ cocos/scripting/js-bindings/manual/jsb_global.h | 1 + 2 files changed, 6 insertions(+) diff --git a/cocos/scripting/js-bindings/manual/jsb_global.cpp b/cocos/scripting/js-bindings/manual/jsb_global.cpp index c1b1826..53a1962 100644 --- a/cocos/scripting/js-bindings/manual/jsb_global.cpp +++ b/cocos/scripting/js-bindings/manual/jsb_global.cpp @@ -435,6 +435,11 @@ bool jsb_run_script(const std::string& filePath, se::Value* rval/* = nullptr */) return se::ScriptEngine::getInstance()->runScript(filePath, rval); } +bool jsb_run_code(const std::string& coder, se::Value* rval/* = nullptr */) { + se::AutoHandleScope hs; + return se::ScriptEngine::getInstance()->evalString(coder.c_str(), coder.size(), rval); +} + bool jsb_run_script_module(const std::string& filePath, se::Value* rval/* = nullptr */) { return doModuleRequire(filePath, rval, ""); diff --git a/cocos/scripting/js-bindings/manual/jsb_global.h b/cocos/scripting/js-bindings/manual/jsb_global.h index 75a45ae..644aa89 100644 --- a/cocos/scripting/js-bindings/manual/jsb_global.h +++ b/cocos/scripting/js-bindings/manual/jsb_global.h @@ -42,6 +42,7 @@ void jsb_init_file_operation_delegate(); bool jsb_enable_debugger(const std::string& debuggerServerAddr, uint32_t port, bool isWaitForConnect = false); bool jsb_set_extend_property(const char* ns, const char* clsName); bool jsb_run_script(const std::string& filePath, se::Value* rval = nullptr); +bool jsb_run_code(const std::string& coder, se::Value* rval = nullptr); bool jsb_run_script_module(const std::string& filePath, se::Value* rval = nullptr); void jsb_set_xxtea_key(const std::string& key);