Fork me on GitHub
#fulcro
<
2018-07-22
>
currentoor18:07:06

I keep getting this error

Dynamically loaded function not found. You forgot to add a dependency to your
   classpath.
   {:sym taoensso.sente/make-channel-socket-server!}

currentoor18:07:30

even though i have that dependency on my class path and i’m able to invoke that function in my application code myself

currentoor19:07:22

Figured it out, it was actually a Java 10 issue

currentoor19:07:29

downgrading to Java 8 fixed it

currentoor19:07:02

the error complained about make-channel-socket-server! but it was actually failing to include the default webserver adapter taoensso.sente.server-adapters.http-kit

currentoor19:07:13

however, I’m using immutant so i didn’t notice the problem in my application code

cjmurphy22:07:20

I just did an experiment which didn't seem to work. Looking for some confirmation that its not supposed to 😐. I have a .css file in which one of the selectors is

.hide {
  display: none !important;
}
. I comment it out and see the page has been affected. So I put this selector in co-located CSS of my component hoping that the page will look good again. But it doesn't so the co-located CSS has not worked. The interesting thing is that the component rendering is done in hiccup, with the whole render function enclosed in (html ...). Am I correct to assume that if I want to use co-located CSS then I should stay away from hiccup?

cjmurphy22:07:30

I did the co-location in the same component, using

:css                       [:.hide {:display "none"}]
.

currentoor23:07:38

@cjmurphy what’s the class on the actual dom element on the page?

currentoor23:07:39

the co-located css will generate a class name like ucv_ui_root_Root__computer-content for a CSS selecter like [:.computer-content {...}]

cjmurphy23:07:19

How do I see the names of the actual dom elements on the page?

cjmurphy23:07:53

Oh - have to look in the html...

cjmurphy23:07:18

I can see the book talks about it: "In the above example, the upsert results in this CSS on the page:". But I don't know how to use Chrome to view the page html of the page I'm looking at in Chrome. 'View page source' just shows me the starting page, the index.html page.

cjmurphy23:07:08

Hmm - just thought - I'm probably not doing the 'upsert-css' step. What I'm doing should work - I guess that's my real question - I'll look at this later. Thanks @currentoor

currentoor23:07:10

right click and inspect

currentoor23:07:52

@cjmurphy real quick, you are using :classNames right?

cjmurphy23:07:58

I'm always in the Chrome devtools

cjmurphy23:07:13

No b/c i'm using hiccup.

currentoor23:07:36

how are you setting the class on the hiccup element?

currentoor23:07:00

and you’re using soblano not hiccup right, hiccup is server only i thought

cjmurphy23:07:16

:div#signupemailsent.col-sm-7.hide

currentoor23:07:25

yeah that’s the problem

currentoor23:07:55

you have to do something like [:div #signupemailsent.col-sm-7 {:class hide} ...]

currentoor23:07:27

where hide comes destructured from the fourth argument to defsc, after this, props, and computed

currentoor23:07:08

i used to use soblano all the time, but now fulcro’s dom macros are expressive enough, and way faster

cjmurphy23:07:12

I just put the css in the component itself.

currentoor23:07:24

can you please paste the whole component here?

currentoor23:07:28

or in a gist?

currentoor23:07:47

might be obvious then

cjmurphy23:07:04

But if i'm not doing the upsert step, isn't that my first problem?

currentoor23:07:34

that is also a problem, yes…

currentoor23:07:47

first, second, last doesn’t really matter simple_smile

currentoor23:07:00

these problems commute

cjmurphy23:07:26

I'll spend a bit more time, haha yes. Bit too long been working me...

cjmurphy23:07:56

I'll do a gist if this really is a problem, but I suspect it is not. This is supposed to work, whether you use hiccup or the Fulcro dom macros. The Fulcro way of doing CSS can always replace the file way. I believe that is a true statement.