JSAppSugar 基于 JavaScript 语法定义的语法糖方法开源项目

我要开发同款
匿名用户2018年11月08日
55阅读
开发技术Object-c
所属分类Objective-C、常用JavaScript包、Web应用开发
授权协议MIT

作品详情

JSAppSugar是基于JavaScript语法定义的一系列语法糖方法,包括:JavaScript方法,Objective-C方法和Java方法,以实现将开发iOS/Mac/Android原生应用程序的部分代码(一般来说是业务逻辑代码),用JavaScript代码来编写,从而简化开发过程,提高开发效率,以及提高程序质量。

通过使用JSAppSugar的Cocoa和Java实现,开发者可以将原有原生代码的任何一部分改为JavaScript实现,并可以在JavaScript代码以JavaScript对象的使用语法使用由原生代码开发的类,而无需关心具体实现是由Java实现还是Objective-C实现。

QuickStart

UseJSObjectInObjective-C

//initialize JSA4CocoaJSA4Cocoa* jsa = [[JSA4Cocoa alloc]init];[jsa startEngine];//create a JS Objectid<JSAObject> jsObject = [jsa newClass:@"JSObject"];//invoke methods on the objectNSString* text = [jsObject invokeMethod:@"getText"];

UseJSObjectInJava

//initialize JSA4JavaJSA4Java jsa = new JSA4Java();jsa.startEngine();//create a JS ObjectJSAObject jsObject = jsa.newClass("JSObject");//invoke methods on the objectString text = (String)jsObject.invokeMethod("getText");

UseNativeObjectInJavaScript

//define the interface for native class$class("NativeObject",{  $implementation:{    $java : "JavaObject",//the name of a java class    $oc : "OCObject"//the name of a OC class  },  getText:{    $java : "getText",    $oc : "getText:"  }});//define a js class. Then you can use this class in JavaScript, Java and objective-c$class("JSObject",{  getText:function(){    //create a native object    var nativeObject = new NativeObject();    //invoke methods on the object    var text = nativeObject.getText("Hello");    return text;  }});
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论