问题标签 [figwheel]
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.
clojurescript - Figwheel 可重载代码与 atom 作为本地(词法)状态?
在给定我的项目的情况下,我正在朝着使用试剂的合适状态设计的方向发展,并且仍然使用不同的原子(我可能会切换到单个原子,但目前正在尝试探索可能性的空间),我已经尝试在根组件的词法上下文中设置所有状态,如下图所示。想法是这app-state
是一个普通的 clojure 映射,其中每个键的值是一个试剂原子。
它接收一个attrs
作为 prop 的映射(来自data-
html 元素上的 attrs),它的工作是初始化一个app-state
映射,该映射本身不是 a r/atom
,而是包含r/atom
s。问题是,所有这些r/atom
s 都是defonce
在文件顶部声明时定义的,这就是我刚刚切换的内容,现在defonce
语义丢失了,并且 figwheel 热重载被破坏了。
有没有办法在以这种风格设置状态时保留可重新加载的代码?
我不能把 adefonce
放在里面 a let
,因为随后的评估时间将评估为零。
或者我在这里缺少一些模式。
clojure - 无法让 Leiningen 命令与 figwheel 一起使用
按照https://leiningen.org/上的说明安装 Leiningen 后,我设法下载了批处理文件并将其保存在以下文件夹中:C:\Users\Dylan\Bin\Lein.bat。
然后我lein.bat self-install
在 CMD 中运行,它创建了文件夹.lein
:
此时添加了 Leiningen。然后,我可以使用 CMD 中的命令创建一个名为 tictactoe 的新项目lein new figwheel tictactoe -- --reagent
,它可以很好地创建文件夹。但是,当我尝试编译 tictactoe 项目时出现问题,见下文:
clojure - Lein figwheel 在创建新的 cljs 命名空间时编译错误“推回缓冲区溢出”
我在这里有一个开源应用程序的轻量级无花果配置https://github.com/milleva/LyricMaster(https://github.com/milleva/LyricMaster/tree/d6d534ff02f098d23c435152627247e753bfb341在发布此内容时)。Pushback buffer overflow
突然间,对我来说,没有明显的原因,每当我尝试添加任何新的命名空间时,figwheel 都会遇到编译错误。
输出lein figwheel
:
这是在几天后回到编码之后发生的。我已经检查了许多早期的提交,但问题仍然存在。
项目.clj:
src/lyric_frontend/thingy.cljs(私有代码,不需要任何地方):
clojurescript - CLJS Uncaught TypeError:无法读取未定义的属性“调用”
我正在从头开始编写一个 cljs 库(即没有 leiningen 模板)。使用lein figwheel
,Figwheel 成功地将我的 cljs 编译为 JS,但由于控制台中出现以下三个错误,因此无法完全连接到我的应用程序:
这是我的 core.cljs:
如何解决这些错误?
clojurescript - How to resolve Uncaught TypeError: clojure is undefined
I have done something to my clojurescript project which produces this error, I am using figwheel-main with deps.edn, not really sure what to look for to resolve this it sounds like clojurescript itself is not being found when run in a browser
my figwheel file looks like this, one fo the changes I have made is to put a lot of the requirements in :extra-deps insteads of under :deps clojurescript and clojure are still included at the root.
What should I look for that might cause this error ?
clojure - 如何使用 Figwheel 和 Leiningen 创建多页面应用程序?
我有一个用 Leiningen 构建的简单 Figwheel应用程序。
我想在其中有多个页面:
- index.html应该使用来自hello-figwheel.core的代码。
- page2.html应该使用来自hello-figwheel.page2的代码
我假设我必须以某种方式修改project.clj文件:
我怎样才能告诉 Leiningen 编译
hello-figwheel.core
到resources/public/js/compiled/hello_figwheel.js
和hello-figwheel.page2
到resources/public/js/compiled/page2.js
?
有一个类似的问题。与此不同的是,Leiningen 用于运行 Figwheel。
更新 1:我在project.clj文件中添加了以下内容:
当我运行lein figwheel
时,REPL 无法连接到我的 Web 应用程序:
它说Prompt will show when Figwheel connects to your application
,但它永远不会发生。
此外,如果我http://localhost:3449/page2.html
在浏览器中打开,更新page2.cljs并在浏览器中刷新页面,则更改在那里不可见。
clojurescript - Clojurescript 无法为包含项目中的 js 文件所需的 .json 文件定义依赖项
我们将 Clojurescript 1.10.7xx 与 Reagent 一起使用,并导入了一个稍旧的 react-markdown 版本(版本 6.0.3)。该版本的 react-markdown 的源文件之一需要来自不同项目的 .json 文件:
这会在 Clojurescript (AFAIK) 生成的 cljs_deps.js 文件中创建对依赖项的引用:
但至少在使用 lein-figwheel 插件运行时,所需的 .json 文件本身永远不会被定义为依赖项。即,cljs_deps.js 文件中缺少此内容:
缺少的依赖项会阻止代码在 figwheel 下正确加载或重新加载,除非手动将缺少的依赖项插入 cljs_deps.js。
cljsbuild 是否有一个选项允许将 .json 文件的 require 语句合并到 Clojurescript 生成的依赖项中?
clojurescript - leiningen 中的 Clojurescript 编译器选项
我的浏览器中的一条错误消息通知我:
根据文档, :asset-path 是一个编译器选项。在我的 leiningen 配置文件中,编译器选项(例如:asset-path)的正确位置是什么?它似乎在顶层不起作用。
该项目是使用以下命令新生成的:
我将网站托管在我自己的服务器上,输出文件托管在/static/cljs-out
,因此需要 :asset-path 选项。
Leiningen 版本是 2.9.1,figwheel-main 版本是 0.2.16