starfederation.datastar.clojure.expressions

→js

macro

(->js & forms)

Compiles Clojure forms into a composable Datastar expression.

Returns an object whose string representation is JavaScript. Prefer this when composing generated expressions into other expressions.

Example:

(let [value (->js (.. evt -target -value))]
  (str (->js (set! $signal ~value))))
;; => $signal = evt.target.value

→js-str

macro

(->js-str & forms)

Compiles Clojure forms into a Datastar expression string.

Prefer <←-GT-js,→js>> when composing generated expressions; strings interpolate as string values.

Example:

(let [value (->js-str (.. evt -target -value))]
  (->js-str (set! $signal ~value)))
;; => $signal = "evt.target.value"

→expr

macro

(->expr & forms)

Compiles Clojure forms into a Datastar expression string.

Backwards-compatible alias for <←-GT-js-str,→js-str>>. Prefer <←-GT-js,→js>> when composing generated expressions into other expressions.