2016-09-14 18:45:59 +00:00
|
|
|
(ns reagentdemo.news.news060rc
|
|
|
|
(:require [reagent.core :as r]
|
|
|
|
[reagent.debug :refer-macros [dbg println]]
|
|
|
|
[reagentdemo.syntax :as s]
|
|
|
|
[sitetools.core :as tools :refer [link]]
|
|
|
|
[reagentdemo.news.news060 :as news060]
|
|
|
|
[reagentdemo.common :as common :refer [demo-component]]))
|
|
|
|
|
|
|
|
(def url "/news/news060-rc.html")
|
|
|
|
(def title "Reagent 0.6.0-rc")
|
|
|
|
|
|
|
|
(def ns-src (s/syntaxed "(ns example.core
|
|
|
|
(:require [reagent.core :as r]))"))
|
|
|
|
|
|
|
|
(defn mixed []
|
|
|
|
[:div
|
|
|
|
"Symbols are " 'ok " as well as " :keywords "."])
|
|
|
|
|
|
|
|
(def some-atom (r/atom 0))
|
|
|
|
|
|
|
|
(defn confusion-avoided []
|
|
|
|
[:div "This is some atom: " some-atom])
|
|
|
|
|
|
|
|
|
|
|
|
(defn main [{:keys [summary]}]
|
|
|
|
[:div.reagent-demo
|
|
|
|
[:h1 [link {:href url} title]]
|
2017-11-28 17:16:26 +00:00
|
|
|
[:span "2016-09-14"]
|
2016-09-14 18:45:59 +00:00
|
|
|
[:div.demo-text
|
|
|
|
[:p "Reagent 0.6.0-rc has been given a lot of testing, a new
|
|
|
|
version of React (15.1.0), bug fixing and some small general
|
|
|
|
improvements since 0.6.0-alpha. It has one new feature: general
|
|
|
|
ClojureScript objects can now be used anywhere in markup
|
|
|
|
content."]
|
|
|
|
|
|
|
|
(if summary
|
|
|
|
[link {:href url :class 'news-read-more} "Read more"]
|
|
|
|
[:div.demo-text
|
|
|
|
[:section.demo-text
|
|
|
|
[:p "See " [link {:href news060/url} "this
|
|
|
|
article"] " for more information about Reagent 0.6.0."]
|
|
|
|
|
|
|
|
[:h2 "Generalized markup"]
|
|
|
|
|
|
|
|
[:p "Symbols and keywords can now be used in markup content
|
|
|
|
like this: "]
|
|
|
|
|
|
|
|
[demo-component {:comp mixed
|
|
|
|
:src (s/src-of [:mixed])}]
|
|
|
|
|
|
|
|
[:p "This makes content conversions behave the same as in
|
|
|
|
attributes, where symbols and keywords have been supported
|
|
|
|
before. "]
|
|
|
|
|
|
|
|
[:p "But mainly it avoids confusing error messages when you
|
|
|
|
happen to drop an arbitrary ClojureScript object into the
|
|
|
|
markup, like this: "]
|
|
|
|
|
|
|
|
[demo-component {:comp confusion-avoided
|
|
|
|
:src (s/src-of [:some-atom
|
|
|
|
:confusion-avoided])}]
|
|
|
|
|
|
|
|
[:p "This may not be particularly useful, but it is at least a
|
|
|
|
lot better than getting a quite confusing error message from
|
|
|
|
React, that no longer accepts unknown objects…"]
|
|
|
|
|
|
|
|
[:p "Any object hat satisfies IPrintWithWriter is allowed, and
|
|
|
|
is converted to a string using " [:code "pr-str" "."]]]])]])
|
|
|
|
|
|
|
|
|
|
|
|
(tools/register-page url [#'main] title)
|