clojure实战——搭建web前端开发框架(模拟web服务器、推送js修改)

本文介绍了如何使用ClojureScript和figwheel库建立一个Web前端开发框架,通过WebSocket实现实时JS更新。无需部署,借助ClojureScript REPL模拟web服务器,浏览器即可访问本地服务。同时,利用environ库管理环境变量,方便切换开发和发布环境。
摘要由CSDN通过智能技术生成

直接动手搭建框架吧,闲话留着后面碎碎念~~

1. 框架概述

  • 使用figwheel库,通过websocket将js推送给浏览器。修改ClojureScript之后,不用重新编译打包,就可立即推送到浏览器进行显示。
  • 使用ClojureScript REPL模拟web服务器,不需将网页部署到ngnix等容器中,浏览器即可访问本地web服务。
  • 使用environ库进行环境变量设置,可轻松切换开发/发布环境。

2. 搭建开发框架

(1)project.clj工程文件
(defproject web-test "0.1.0-SNAPSHOT" 
  :description "web前端框架" 
  ;; 资源文件,
  :source-paths ["src/clj" "src/cljs"]
  :dependencies 
            [[org.clojure/clojure       "1.7.0]
             [org.clojure/clojurescript "1.7.170"]

             ;; 构建测试用的服务端
             ;;为ring建立路由通道必备
             [compojure                 "1.4.0"]   
             ;;clojure实现web服务基础框架     
             [ring                      "1.4.0"]    
             ;;ring中间件相关    
             [ring/ring-defaults        "0.1.5"]     

             ;;构建clojure工程    
             [leiningen                 "2.5.3"]    

             ;;异常报告for ring   
             [prone                     "0.8.0"]]       
:plugins [   ;;将clojurescript编译为js的插件
             [lein-cljsbuild "1.1.1"]         
             ;;ring管理                        
             [lein-ring "0.9.0"]
             ;;css/javascript压缩工具                             
             [lein-asset-minifier "0.2.2"]
             ;;
             [lein-figwheel "0.5.0-1"]]           
 :ring {:handler handler/app}
 ; leiningen如果低于这个版本就警告 
 :min-lein-version "2.5.3" 
 :clean-targets ^{:protect false} ["resources/public/js"]
 :cljsbuild {:builds {:exchange {:source-paths ["src/cljs/exchange"]
                      :compiler {:output-to     "resources/public/js/web-test.js
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值