2013-12-18 48 views
1

我使用Qt框架创建和HTML5应用程序。我使用QtWebkit来显示我的HTML。我知道QtWebkit具有addToJavascriptObject的功能,但我不喜欢JavaScript那么多,我宁愿使用Ruby等其他语言来编写脚本,就像TideSDK一样。在Qt HTML5应用程序中使用替代脚本语言

该应用程序将跨平台,也在移动平台上。

这怎么可能?例如,有没有办法获得与addToJavascriptObject相同的效果,但使用Ruby?

+0

我不认为这是可能的,除非通过重写大部分QtWebkit本身。它与Javascript紧密相连。 – SirDarius

+0

@SirDarius:+1,尽管我对此问题+1,也是因为我感到有些同情。我也不喜欢javascript,我更喜欢OOP脚本语言,比如Python ... – lpapp

+0

@LaszloPapp是的,我+1你的+1,虽然可能有一个逃生路线,例如通过使用[插入你最喜欢的语言] -to-JS转换器,或类似Coffeescript至少接近Ruby :) – SirDarius

回答

0

这怎么可能?

有没有办法得到尽可能addToJavascriptObject但与红宝石一样的效果,比如?

Qt框架是重附连到的JavaScript,当涉及到脚本;喜欢与否。

这就是说,我对你的要求有些同情。我不喜欢javascript,因为我更喜欢OOP编程。我想看看例如python,但目前这是不可能的,而且绝对不是Qt项目中的目标方向。

您也许可以使用一些适配器,将您的代码转换为首选语言的代码为Qt接受的JavaScript,但您完全依靠自己的代码。我不会推荐这个,原因有几个。

一旦您遇到问题与interpration,您将需要手动工作,可能包括您不喜欢的JavaScript的黑客攻击。

此外,Qt可能会决定在任何一个点上都有一个定制的javascript版本,在这种情况下,解释器会被破坏。

我了解您的个人偏好,但我会建议您习惯它;这并不坏。

1

虽然这不可能直接实现,但您可能通过使用例如Ruby作为主要语言以及使用诸如http://opalrb.org/之类的工具对JavaScript进行中间编译来获得一些成功。

我真的不知道它有多好,如果生成的代码是有效的。但无论如何,如果可维护性是您最关心的问题,那么您应该看看。

相关问题