我目前正在Cordova
和Clojurescript
上开发一个示例应用程序。我正在使用shadow-cljs
来构建项目,但不知何故,我找不到让代码重载的方法。
相反,我在开发时必须使用浏览器构建,因为它允许代码重载的反馈循环更短。然后,我使用cordova
命令行将应用程序部署到设备/模拟器。
shadow-cljs
中是否有一种方法可以使代码重载在开发时直接使用设备/模拟器工作?
我用shadow-cljs
和Cordova创建了一个简单的例子。我只测试了windows
运行时,但我认为其他运行时也能正常工作。
它都是常规的shadow-cljs
,配置文件中唯一的特殊调整是:use-document-host false
,因为默认情况下,它会尝试使用document.location
并找出从那里连接的位置。在Windows上,至少有一些ms-appx://
URL不能用于连接shadow-cljs
网络套接字。因此,我们禁用了默认值,这将使其使用localhost
。这适用于Windows,但其他平台可能需要调整:devtools url config选项,以防生成的"应用程序"不在同一台计算机上运行(例如移动设备或模拟器(。