Javascript 移动应用程序:混合逻辑,本机用户界面

Javascript 移动应用程序:混合逻辑,本机用户界面,javascript,android,ios,native,hybrid-mobile-app,Javascript,Android,Ios,Native,Hybrid Mobile App,正如标题所说,我想将本机UI的优点与混合应用程序的优点结合起来。 Internet上充斥着关于React Native、Ionic、Native Script等的文章,但它们都有共同的模式:用一种语言编写,框架本身转换为Native view组件 我想避免这个过程。我想构建我的原生UI,我想调用我的混合组件,用Javascript或其他语言编写,并在那里完成所有的逻辑工作 一个简单的场景(Android): 我创建了一个新的安卓活动,其中有一个按钮(例如,一个“添加”按钮) 我点击按钮,它会触

正如标题所说,我想将本机UI的优点与混合应用程序的优点结合起来。 Internet上充斥着关于React Native、Ionic、Native Script等的文章,但它们都有共同的模式:用一种语言编写,框架本身转换为Native view组件

我想避免这个过程。我想构建我的原生UI,我想调用我的混合组件,用Javascript或其他语言编写,并在那里完成所有的逻辑工作

一个简单的场景(Android):

  • 我创建了一个新的安卓
    活动
    ,其中有一个
    按钮
    (例如,一个“添加”
    按钮
  • 我点击
    按钮
    ,它会触发经典的
    onClick()
    方法
  • onClick()
  • 在我的混合组件中,在“app”函数中,我做了所有的事情:http调用/db查询/什么都不做。一旦有了结果,我就调用视图来更新它
我心目中的这种模式与MVP非常相似。唯一的区别是演示者在Android/iOS/Other SO之间共享

我听说Spotify就是这样做的,所以我认为这是可能的。但如何实现?
是否存在现有的框架/库?我必须自己写不同语言之间的所有桥梁吗


非常感谢您的帮助/想法

使用React Native可以做到这一点,但用本机代码编写布局对我来说没有意义。在React Native中编写视图,然后在JS中编写逻辑,视图绑定到本机组件。如果你正在移植一个现有的应用程序,你必须将这个组件从本机转换为React-native。我已经知道这个解决方案,但这不是我想要实现的。如果谷歌/苹果发布一个新视图呢?我不得不花时间在React上写一个新的观点。或者如果我创建一个新的自定义视图呢?我必须用母语创建自定义视图,然后用React编写视图。我想避免这种冗余,只使用本机编写UI,混合部分只负责逻辑。在这种情况下,看看Rhino@Cobolt,非常感谢,这是一个起点。现在我需要iOSHi@NoelDeMartin类似的东西,是的,我开始研究Kotlin多平台,这就是答案。唯一的问题是,为了与iOS和Android兼容,您需要使用多平台库。我正在使用Ktor for http,SQLDelight for Db这在某种程度上可以通过React Native实现,但是用本机代码编写布局对我来说没有意义。在React Native中编写视图,然后在JS中编写逻辑,视图绑定到本机组件。如果你正在移植一个现有的应用程序,你必须将这个组件从本机转换为React-native。我已经知道这个解决方案,但这不是我想要实现的。如果谷歌/苹果发布一个新视图呢?我不得不花时间在React上写一个新的观点。或者如果我创建一个新的自定义视图呢?我必须用母语创建自定义视图,然后用React编写视图。我想避免这种冗余,只使用本机编写UI,混合部分只负责逻辑。在这种情况下,看看Rhino@Cobolt,非常感谢,这是一个起点。现在我需要iOSHi@NoelDeMartin类似的东西,是的,我开始研究Kotlin多平台,这就是答案。唯一的问题是,为了与iOS和Android兼容,您需要使用多平台库。我将Ktor用于http,SQLDelight用于db