Opa 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
Opa 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
Opa 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
Opa 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
Opa 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 MIT
操作系统 跨平台
软件类型 开源软件
开源组织
地区 不详
投 递 者 红薯
适用人群 未知
收录时间 2011-07-24

软件简介

Opa 是一个用于JavaScript的全栈式开源 Web 开发框架,让你编写安全和可扩展的Web应用程序。

Opa生成标准的Node.js/MongoDB应用程序,原生支持HTML5和CSS,并将现代Web应用程序编程的许多方面自动化。Ajax/Comet客户-服务器通信,事件驱动和非阻塞编程模型。

示例代码:

type message = { author : string ; text : string }

@publish room = Network.cloud("room") : Network.network(message)

user_update(x : message) =
  line = <div class="line">
            <div class="user">{x.author}:</>
            <div class="message">{x.text}</>
         </>
  do Dom.transform([#conversation +<- line ])
  Dom.scroll_to_bottom(#conversation)

broadcast(author) =
   do Network.broadcast({~author text=Dom.get_value(#entry)}, room)
   Dom.clear_value(#entry)

start() =
   author = Random.string(8)
   <div id=#header><div id=#logo></></>
   <div id=#conversation onready={_ -> Network.add_callback(user_update, room)}></>
   <div id=#footer>
      <input id=#entry onnewline={_ -> broadcast(author)} />
      <div class="button" onclick={_ -> broadcast(author)}>Post</>
   </>

server = Server.one_page_bundle("Chat", [@static_resource_directory("resources")],
       ["resources/css.css"], start)
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (1)

加载中
看样子挺神啊 ~~~ 灰主牛 ? Opa
2013/08/15 09:49
回复
举报
更多评论
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了问答
2011/07/27 12:24

代码需要低耦合、强内聚

Opa 语言将HTML标签和代码合并到一起,这个是J2EE Model1时代的产物,难于维护,不荐推广.

7
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
1 评论
57 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部