问题标签 [clojurescript-javascript-interop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
232 浏览

amazon-s3 - 在 Clojurescript 中,如何使用 AWS javascript SDK 列出 S3 存储桶?

我刚刚开始使用 Clojurescript。我编写了一些 clojurescript 代码来使用共享的 aws 凭证文件来初始化 S3 客户端和列出存储桶。但是我的代码不起作用。

上面的 AWS/config.getCredentials 确实选择了正确的配置文件,如(println AWS/config.credentials.accessKeyId). listbuckets 代码引发以下错误:

我有 Google AWS SDK S3 clojuresript 并且是我找到的唯一链接。我用它来配置 S3 客户端,但这似乎不起作用

我将不胜感激任何帮助。

0 投票
1 回答
634 浏览

clojurescript - 如何在 Clojurescript 中创建异步函数?

Clojurescript 中是否有办法创建异步函数或宏将函数包装到 Promise 中以模拟它?我当前的用例是用异步版本替换以下接受回调的函数 - 顺便说一句,这是针对AWS lambda 函数的。

鉴于这是 Clojurescript,使用await不是问题。而且我知道这可以简单地返回一个 Promise 以符合async要求。因此它解析为一些糖代码来创建 Promise,为我捕获所有错误并在快乐的路径上调用 resolve 或以其他方式拒绝。

浏览clojure.core.async和文档 - 包括clojurescript 参考,我没有找到任何东西。

0 投票
1 回答
169 浏览

javascript - 在 ClojureScript 中实现静态属性

如何在 ClojureScript 中模仿这种 JavaScript 继承?

穆的理解是:

  • static是对象本身的属性
  • 原型属性(方法)可以通过设置-.prototype

这将是这样实现的:

我不确定如何:

  • 模仿get糖,
  • 因为AccessController extends EventEmitter我如何继承 的static属性(EventEmitter如果有的话)?
0 投票
0 回答
98 浏览

javascript - Clojurescript 与 ProseMirror 互操作

我想将修改后的 ProseMirror 编辑器添加到基于 figwheel-main 的 Clojurescript 项目中。在建立了一个小型实验项目之后,我只是想从ProseMirror 指南中重现这个非功能编辑器。

我从模板中设置了一个 figwheel-main 项目并添加了几行代码:

let在任何其他功能之外——我只是想让互操作性工作以创建一些对象。这编译没有错误或警告。尝试加载时,浏览器控制台会抛出错误,

TypeError: undefined is not an object (evaluating 'this.state.plugins')

并且view永远不会创建。goog.objectget函数显示editor-state确实包含一个空plugins值,#js []

导致构造EditorView对象失败的问题是什么?

0 投票
1 回答
66 浏览

clojurescript - 更改类字符串时 Clojurescript 应用程序中的问题

我的应用程序中出现了一些 Clojurescript 的奇怪问题。我将所有相关部分提取到一个小的 Leiningen Reagent 应用程序中。这是相关的打嗝:

这只是一个简单的 HTML 表格。以下是选择和取消选择功能:

select-all-rows 函数按预期工作,所有行都应用了“row-selected”类,CSS 突出显示了这些行:

在此处输入图像描述

但是当我执行 unselect-all-rows 函数时,我只会得到一些未选择的行:

在此处输入图像描述

如果我再单击 2 次,则所有行最终都未选中。如果我查看控制台,选择的行数是我所期望的,在第​​一种情况下为 7,但它似乎只对交替行执行删除操作:

在此处输入图像描述

我在这里想念什么?

0 投票
1 回答
164 浏览

clojurescript - ClojureScript 将 Javascript Map Iterator 转换为 seq

我正在调用一个 Javascript 库并返回一个 Map Iterator(在 Javascript 中您使用 for ... in)

如何将其转换为 ClojureScript 序列以便调用for它?

0 投票
1 回答
177 浏览

npm-install - 所需的 JS 依赖 "@silvia-odwyer/photon" 不可用 -- ClojureScript -- Node.js -- npm -- yarn

我正在做示例项目https://github.com/minimal-xyz/minimal-shadow-cljs-importing-npm以稍后添加 Photon 依赖项https://silvia-odwyer.github.io/photon/guide/using- photon-web/并按照步骤操作后,我收到此警告。

在执行“npx shadow-cljs watch client”或“yarn shadow-cljs watch client”之前,我尝试过:

并且文件确实在 node_modules 文件夹中,但它不起作用

我尝试了“npm cache clean -f”并再次安装

我尝试删除 node_modules 文件夹和 package-lock.jason 文件并再次安装

与https://github.com/minimal-xyz/minimal-shadow-cljs-browser相同的问题

示例项目可以很好地使用包含的依赖项(在安装 Photon 依赖项之前)

这是我安装后的 package.json:

这是我的 shadow-cljs.edn:

这里是 main.cljs 文件,需要/导入与其他相同的依赖项:

我错过了什么?

0 投票
1 回答
45 浏览

clojurescript - Clojurescript core.matrix aljabr 实现必须显式设置

在 ClojureScript 项目中使用core.matrix。对于 javascript 互操作,我需要aljabr,如https://github.com/mikera/core.matrix/wiki/Matrix-implementations中所述

在我尝试指定实现之后(就像我对其他 Clojure 实现所做的那样)

我收到此错误,我无法将矩阵实现用于 Javascript

在 github 上查看我只找到上面提到的实现(例如https://github.com/mars0i/free/commit/71dbbe4d58645ad4e25f2ac2d4ccba6ccef93968),我怎样才能让 aljabr 在 cljs 中工作?

0 投票
1 回答
41 浏览

clojurescript - 如何在 Node 上运行的 Clojurescript 中获取用户主目录的路径?

您不能~在路径中使用 NodeJS 函数,因为这是特定于 bash 的事情。那么如何在 Clojurescript(在 Node 上)中获取用户主目录的路径?

0 投票
1 回答
65 浏览

clojurescript - 如何附加到 ClojureScript 中的文件(在节点上)?

如何使用 ClojureScript(在 Node 上运行)附加到本地文件?