Clojure在线运行

版本:
运行结果
教程手册
代码仓库
极速运行
交互输入
极速运行模式,更高效的运行,点击编辑器上方的运行按钮即刻体验吧。
以下是用户最新保存的代码
[更多]
显示目录

应用程序



应用程序

Clojure有一些有用的库,它们能够创建桌面和基于Web的应用程序。让我们来讨论它们中的每一个。

序号 方法和说明
桌面-跷跷板 See-saw是一个可用于创建桌面应用程序的库。
桌面–更改文本的值 可以使用“ config!”选项更改窗口中内容的值。在下面的示例中配置!选项将将窗口内容更改为新值“再见”。
桌面–显示模态对话框 该方法采用文本值,需要在模态上方中显示。
桌面–显示按钮 按钮可以在按钮类的帮助下显示。
桌面–显示标签 可以在标签类的帮助下显示标签。
桌面–显示文本字段 文本文本可以在文本类的帮助下显示。

Web应用程序-简介

要在Clojure中创建Web应用程序,您需要使用Ring应用程序库,该应用程序库在以下链接中提供 https://github.com/ring-clojure/ring

您需要确保从网站下载必要的jar,并确保将其添加为Clojure应用程序的依赖关系。

Ring框架提供以下功能:

  • 设置事情,因此http请求作为常规的Clojure HashMap进入您的Web应用程序,同样也是您可以返回作为HashMap的响应。

  • 提供一个规范,描述那些请求和响应映射应该是某种子。

  • 接入Web服务器(Jetty)启动,连接您的Web应用程序连接到它。

Ring框架可以自动启动Web服务器,并确保Clojure应用程序在此服务器上工作。然后还可以使用Compojure框架。这允许创建路线,现在是大多数现代Web应用程序的开发。

创建您的第一个Clojure应用程序 -以下示例显示如何在Clojure中创建第一个Web应用程序。

(ns my-webapp.handler
   (:require [compojure.core :refer :all]
      [compojure.route :as route]
      [ring.middleware.defaults :refer [wrap-defaults site-defaults]]))
(defroutes app-routes
   (GET "/" [] "Hello World")
   (route/not-found "Not Found"))
(def app
   (wrap-defaults app-routes site-defaults))

让我们来看看程序的以下方面

  • 'defroutes'用于创建路由,如何对Web应用程序对不同路由的请求可以指向您的Clojure应用程序中的不同函数。

  • 在上面的示例中,“ /”被称为替代路由,因此当您浏览到Web应用程序的基础时,串联“ Hello World”将被发送到Web浏览器。

  • 如果用户命中任何无法由Clojure应用程序处理的URL,则可以显示字符串“未找到”。

当运行Clojure应用程序时,替代情况下,应用程序将作为本地主机:3000加载,因此如果浏览到此位置,您将收到以下输出。

Clojure的应用

Web应用程序-为您的Web应用程序添加更多路由

您还可以向您的Web应用程序添加更多路由。以下示例显示如何实现此。

(ns my-webapp.handler
   (:require [compojure.core :refer :all]
      [compojure.route :as route]
      [ring.middleware.defaults :refer [wrap-defaults site-defaults]]))
(defroutes app-routes
   (GET "/" [] "Hello World")
   (GET "/Tutorial" [] "This is a tutorial on Clojure")
   (route/not-found "Not Found"))
(def app
   (wrap-defaults app-routes site-defaults))

(GET“ / Tutorial” []“这是一个关于Clojure的教程”)

如果浏览到位置http://本地主机:3000 / Tutorial,您将收到以下输出。

本地主机


由JSRUN为你提供的Clojure在线运行、在线编译工具
        JSRUN提供的Clojure在线运行,Clojure 在线运行工具,基于linux操作系统环境提供线上编译和线上运行,具有运行快速,运行结果与常用开发、生产环境保持一致的特点。

title

使用此草稿 删除草稿

注册登录后可减少验证码的弹出,点击前往 注册 | 登录

皮肤:

运行模式:

嵌入代码 iframe嵌入: