Haskell之Yesod開發–邊踩坑邊開發(2.1)
阿新 • • 發佈:2019-01-24
按照書上第八章的內容,我們來建立一個表單。
程式碼無誤,但是有一點,預設的庫使用了Google的CDN。這在大區域網當然沒法用。我們來改造一下
首先我們要搞定自己的靜態資源(如果你有CDN,可以跳過這裡)
1.安裝yesod-static
安裝過程會提示有些庫找不到,可以一個個的手動安裝,一定可以成功的
2.讓程式碼識別出我們的靜態資料夾
參看Haskell之Yesod開發–邊踩坑邊開發(2)
接下來我們修補一下靜態檔案
1.複製我們需要的檔案到static資料夾
分別是jquery.min.js jquery-ui.css jquery-ui.min.js
當然你可以增加其他的供自己使用
2.然後修補程式碼
具體解釋看這裡 https://github.com/yesodweb/yesod/blob/master/yesod-form/Yesod/Form/Jquery.hsinstance YesodJquery App where --urlJqueryJs :: App -> Either (Route App) Text urlJqueryJs _ = Right "/static/jquery.min.js" --urlJqueryUiJs :: App -> Either (Route App) Text urlJqueryUiJs _ = Right "/static/jquery-ui.min.js" --urlJqueryUiCss :: App -> Either (Route App) Text urlJqueryUiCss _ = Right "/static/jquery-ui.css"
我這裡偷懶了一下,沒有修補googleHostedJqueryUiCss
最後 cabal run 。嗯!表單很快就顯示了