This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-01-26
Channels
- # beginners (55)
- # bristol-clojurians (4)
- # calva (9)
- # clj-kondo (29)
- # cljsrn (1)
- # clojars (6)
- # clojure (57)
- # clojure-dev (4)
- # clojure-uk (22)
- # clojurescript (52)
- # code-reviews (1)
- # core-async (33)
- # cursive (12)
- # datomic (46)
- # docker (7)
- # figwheel-main (13)
- # fulcro (8)
- # graalvm (3)
- # instaparse (1)
- # kaocha (2)
- # perun (1)
- # portkey (5)
- # re-frame (3)
- # shadow-cljs (46)
- # spacemacs (7)
- # specter (3)
- # vim (1)
- # vscode (3)
I'm trying to switch my work app from a figwheel app to shadow. I'm partway there but i seem to be blowing up, lots of warnings failed to load re_frame.events.js Error: No protocol method IMapEntry.-key defined for type object: [object Object]
. The websocket connects and then immediately says that it cannot parse the message. It seems almost that cljs isn't well defined
things seem to be compiling. resources/public/js/main.js is output. our custom backend is serving resources/public and i have an asset path of "/js"
@dpsutton likely very old versions of some libraries that incompatible with the CLJS release
IMapEntry.-key
is a common error for libs that used to call key
on vectors which used to work but no longer
;; shadow-cljs configuration
{:source-paths
["src/dev"
"src/main"
"src/test"]
:dependencies
[reagent "0.9.1"]
:dev-http {8080 "public"}
:builds
{:frontend
{:target :browser
:modules {:main {:init-fn }}}}}
And I get
shadow-cljs - config: /Users/kamuela/Code/acme-app/shadow-cljs.edn cli version: 2.8.83 node: v12.14.1
===== ERROR =================
reagent is not ISeqable
=============================
when I try to run shadow-cljs watch frontend
Top of app.cljs:
(ns
:require [reagent.core :as r])
kinda hard to say what you are doing. that ===== ERROR =======
bit comes from the shadow-cljs command line. so not even the compiler
solved my woes. seems schema was doing shenanigans with mapentry. I dont' entirely understand what was going on but bumping this solved my woes. https://github.com/plumatic/schema/pull/393
i'm trying to use waypoints.js. Its an IIFE that sets window.Waypoint = Waypoint
. There seems to be no export or anything so when i try to add a require to "waypoints" shadow is recommending me to npm install waypoints which i've already done. Is there a way to "import" this and then use it like js/Waypoint.
?
yeah it seems pretty crazy. it's just establishes it is taking over the global Waypoint binding and that's it.
you can still require it. the package just doesn't contain the proper settings. so shadow-cljs can't tell which file to include
do i need to set some compiler setting reassuring that js/Waypoint will exist? Can't image that's statically known
i think i'm close to having our app moved from lein-figwheel. thanks so much for your tremendous work
@thheller is there a way for me to tell shadow to look for a package.json in a subfolder?
I am trying to work around behavior in Cursive which requires module definitions to basically be defined with the folder name and Cursive will overwrite the modules when re-importing
and because of how https://aws-amplify.github.io/ organizes its AWS Lambda fn's I have to have a specific folder structure inside the lambdas