Comments (17)
Hi piranha,
can you provide a failing test case. I can't reproduce this and
the tests I added here are working:
Thanks, Roman.
from sablono.
Hmm.. give me few minutes, I'll try to setup a minimal project to test this.
from sablono.
Argh, it works for me properly in minimal case, but fails in bigger project. :(
from sablono.
Ok, so in minimal case it generates code like React.DOM.div({className:"jumbotron"},Af(a))}
. But in my case it generates new S(null,"div.jumbotron", "div.jumbotron")
. I guess that's because of ifs, right?
from sablono.
Ok, here is your minimal case :)
(ns sab-56.core
(:require [om.core :as om :include-macros true]
[sablono.core :as html :refer-macros [html]]))
(def app-state (atom {:text "Hello world!"}))
(defn root [P owner]
(reify
om/IRenderState
(render-state [this state]
(html
(if-not (:auth P)
[:div.not-here]
[:div.jumbotron
(:text P)])))))
(om/root app-state root (. js/document (getElementById "app")))
Works in normal mode, fails in advanced.
from sablono.
I will really appreciate if we can get this fixed today, since I'm using sablono for staticshowdown.com and rewriting all the HTML code doesn't feel as best activity right now. :-)
from sablono.
Are you using externs?
from sablono.
This works for me: https://github.com/r0man/sablono-issue-16
from sablono.
I really don't understand what's going on there. I cloned your project and it works. It doesn't work in mine though, but I don't notice any differences: https://github.com/piranha/sab-16
from sablono.
It started to work after I removed all artefacts and compiled from scratch... Is this because of pretty-print or what?
from sablono.
Your project is working fine for me as well.
from sablono.
Yes, removing :pretty-print false
from my main project made it working for me as well. :) Add that (and don't forget to recompile from scratch) and you'll have it failing. %)
Thanks a lot for helping!
from sablono.
Sorry, I'm not able to reproduce this, even with :pretty-print true
.
from sablono.
Hmm.. Ok, let this issue wait for tomorrow, I'll try to demonstrate this behavior better then. Right now I'm just happy that it's working. :)
from sablono.
I also don't have any problems with advanced compilation. Here extract from my project.clj:
:optimizations :advanced
:pretty-print false
:preamble ["react/react.min.js"]
:externs ["react/externs/react.js"]}}
sablono 0.2.6, om 0.3.6
from sablono.
Closing this. Can't reproduce this.
from sablono.
Sure, if I'll ever stumble upon this again I'll notify you. :-)
from sablono.
Related Issues (20)
- Self-host compat? HOT 1
- Regression: wrapped select doesn't render child elements properly HOT 3
- build-all breaks in simple/advanced compilation HOT 3
- Input not controlled when value and on-change specified. HOT 30
- :style maps kebab-case to CamelCase automatic conversion only works with literals? HOT 4
- Add test for symbol resolution in map keys HOT 1
- How to clear a HTML input element? HOT 4
- Are non-breaking spaces supported? HOT 2
- :npm-deps compat HOT 4
- sablono doens't work in a bootstrapped cljs environment HOT 3
- Now that React 16 has been released can we release a new version of sablono? HOT 13
- `map` inside `for` results in rendered components that don't re-render HOT 1
- Add support for more forms (e.g. `when`) HOT 7
- Add support for directly use other react component HOT 3
- Checkbox inputs don't update "checked" value on rerender HOT 3
- Add cljs.core.Repeat to IInterpreter
- `case` fails when `nil`s are present
- Nested class sequences are not flattened
- js/React is deprecated and makes it hard for folks to use npm react HOT 2
- Docs?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sablono.