Shadow-cljs 需要反应选择

问题描述 投票:0回答:1

目前我需要使用

["react-select" :default Select]
来创建组件:

(def dropdown-standard (ra/adapt-react-class Select))
(这非常有效)

我想访问可创建组件(https://react-select.com/creatable),文档要求它为:

import Creatable, { useCreatable } from 'react-select/creatable';

我已经尝试过显而易见的事情,那就是尝试在 cljs 中复制它

["react-select/creatable" :default Creatable]
但这不会起作用,因为shadow-cljs会尝试找到不存在的npm库react-select/creatable。

我也尝试过直接通过

["react-select" :as react-select]
要求反应选择 然后拨打
react-select/SelectBase
react-select/Creatable
。该组件的行为不符合预期,并且存在一些错误,因此我猜测这不是正确的方法。

之前我需要

[cljsjs/react-select "2.4.4-0"]
,这让我可以直接拨打
js/Select
js/Select.Creatable
。但由于shadow-cljs,我无法再使用cljsjs。

我已阅读 Shadow-cljs 用户指南 (https://shadow-cljs.github.io/docs/UsersGuide.html#cljsjs) 中有关迁移 cljsjs 的部分,但它似乎只是将一些函数导出到 React 中命名空间等。尝试过但没有解决我的问题。

clojure clojurescript react-select shadow-cljs clojurescript-javascript-interop
1个回答
0
投票

解决了。 阅读 Shadow-cljs 中的 npm 库部分 (https://shadow-cljs.github.io/docs/UsersGuide.html#_using_npm_packages)

通过导入使用:

["react-select" :as rsel :default Select :refer (Creatable)]

我能够在react-select库中引用Creatable

© www.soinside.com 2019 - 2024. All rights reserved.