jarohen / flow

Lightweight library to help you write dynamic CLJS webapps
38 stars 7 forks source link

Support for inline JS macro expansions #5

Open jarohen opened 9 years ago

jarohen commented 9 years ago

It's having trouble with macros that expand to inline JS ( (js* ...) ) - need to handle this explicity.

This is a pretty important fix - (and ...) and (or ...) both expand to this.

jarohen commented 9 years ago

These seem to work. but sometimes (i.e. I can't figure out why) these leave warnings about undeclared vars that aren't actually undeclared.

e.g.

(f/el
  (let [a 2]
    (when (= a 2)
      ...)))

doesn't warn, but

(f/el
  (let [a 2]
    (when (and (= a 2)
               (= 4 4))
      ...)))

does. It then goes on to work at run-time.

Strange.