mirror of
https://github.com/status-im/re-natal.git
synced 2025-01-14 22:54:32 +00:00
42a9256805
- forcing reloading core namespace (using ^:figwheel-load annotation) is wrong. It causes evaluation of wrong js files for platform because both ios and android core.js files are reloaded.
34 lines
1.4 KiB
Clojure
34 lines
1.4 KiB
Clojure
(ns $PROJECT_NAME_HYPHENATED$.$PLATFORM$.core
|
|
(:require [reagent.core :as r :refer [atom]]
|
|
[re-frame.core :refer [subscribe dispatch dispatch-sync]]
|
|
[$PROJECT_NAME_HYPHENATED$.handlers]
|
|
[$PROJECT_NAME_HYPHENATED$.subs]))
|
|
|
|
(set! js/React (js/require "react-native"))
|
|
|
|
(def app-registry (.-AppRegistry js/React))
|
|
(def text (r/adapt-react-class (.-Text js/React)))
|
|
(def view (r/adapt-react-class (.-View js/React)))
|
|
(def image (r/adapt-react-class (.-Image js/React)))
|
|
(def touchable-highlight (r/adapt-react-class (.-TouchableHighlight js/React)))
|
|
|
|
(def logo-img (js/require "./images/cljs.png"))
|
|
|
|
(defn alert [title]
|
|
(.alert (.-Alert js/React) title))
|
|
|
|
(defn app-root []
|
|
(let [greeting (subscribe [:get-greeting])]
|
|
(fn []
|
|
[view {:style {:flex-direction "column" :margin 40 :align-items "center"}}
|
|
[text {:style {:font-size 30 :font-weight "100" :margin-bottom 20 :text-align "center"}} @greeting]
|
|
[image {:source logo-img
|
|
:style {:width 80 :height 80 :margin-bottom 30}}]
|
|
[touchable-highlight {:style {:background-color "#999" :padding 10 :border-radius 5}
|
|
:on-press #(alert "HELLO!")}
|
|
[text {:style {:color "white" :text-align "center" :font-weight "bold"}} "press me"]]])))
|
|
|
|
(defn init []
|
|
(dispatch-sync [:initialize-db])
|
|
(.registerComponent app-registry "$PROJECT_NAME$" #(r/reactify-component app-root)))
|