Использование результирующего объекта из require call в ClojureScript?

#npm #clojurescript #clojurescript-javascript-interop #shadow-cljs

#npm #clojurescript #clojurescript-javascript-взаимодействие #shadow-cljs

Вопрос:

В JavaScript есть идиома:

 const ScrollTrigger = require('ScrollTrigger-classes');

var trigger = new ScrollTrigger({
		once: true
	});  

Как мне сделать то же самое в ClojureScript, используя Shadow-CLJS для модулей npm?

Ответ №1:

Предпочтительно вы делаете это через ns .

 (ns your.thing
  (:require ["ScrollTrigger-classes" :as ScrollTrigger]))

(let [trigger (ScrollTrigger. #js {:once true})]
  ...)
  

Если вам нужно, вы можете просто использовать (let [ScrollTrigger (js/require "...") ...] ...) .

Комментарии:

1. Это работает, спасибо. Мне не хватало конечной точки. По-прежнему не удается вызвать позицию прокрутки с его помощью, но это другой вопрос…