mirror of
https://github.com/wgh136/flutter_qjs.git
synced 2025-09-27 13:27:24 +00:00
Merge pull request #5 from huage2580/master
add sync eval method,update cmakelist for ios
This commit is contained in:
@@ -15,6 +15,9 @@ set_target_properties(ffiquickjs PROPERTIES
|
|||||||
VERSION 1.0.0
|
VERSION 1.0.0
|
||||||
# "compatibility version" in semantic format in Mach-O binary file
|
# "compatibility version" in semantic format in Mach-O binary file
|
||||||
SOVERSION 1.0.0
|
SOVERSION 1.0.0
|
||||||
|
MACOSX_FRAMEWORK_BUNDLE_VERSION 100
|
||||||
|
MACOSX_FRAMEWORK_SHORT_VERSION_STRING 100
|
||||||
|
XCODE_ATTRIBUTE_DYLIB_INSTALL_NAME_BASE "@rpath"
|
||||||
PUBLIC_HEADER ffi.h
|
PUBLIC_HEADER ffi.h
|
||||||
XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "Apple Development"
|
XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "Apple Development"
|
||||||
# RESOURCE "${RESOURCE_FILES}"
|
# RESOURCE "${RESOURCE_FILES}"
|
||||||
|
@@ -128,4 +128,18 @@ class FlutterQjs {
|
|||||||
jsFreeValue(_ctx, jsval);
|
jsFreeValue(_ctx, jsval);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Evaluate js script (Sync).
|
||||||
|
dynamic evaluateSync(String command, {String name, int evalFlags}) {
|
||||||
|
_ensureEngine();
|
||||||
|
var jsval =
|
||||||
|
jsEval(_ctx, command, name ?? "<eval>", evalFlags ?? JSEvalType.GLOBAL);
|
||||||
|
if (jsIsException(jsval) != 0) {
|
||||||
|
jsFreeValue(_ctx, jsval);
|
||||||
|
throw Exception(parseJSException(_ctx));
|
||||||
|
}
|
||||||
|
var result = jsToDart(_ctx, jsval);
|
||||||
|
jsFreeValue(_ctx, jsval);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user