问题标签 [scalajs-react]

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 回答
276 浏览

scala.js - 一些对 JS 库的引用无法解析

我正在尝试遵循 ScalaJS Book 教程。基于他们的 build.sbt 示例https://github.com/ochrons/scalajs-spa-tutorial/blob/master/build.sbt

我创建了以下 build.sbt

但是当我这样做时,sbt ~fastOptJS我得到一个错误

0 投票
1 回答
73 浏览

scala - 如何理解这段代码行?

这段代码行在做什么?这是另一种表示法的语法糖吗?

0 投票
1 回答
138 浏览

scala - 第一次点击按钮有一个奇怪的行为

我正在使用一个待办事项列表应用程序

  • 斯卡拉伊斯,
  • 猫(免费单子),和
  • scalajs反应

当我使用像下面的代码这样的简单模型时,一切都按预期工作。

一旦我使用了猫的免费单子,我就会有一种奇怪的行为。第一次单击总是插入两个待办事项条目。之后的每次点击都按预期工作。请参阅下面的图片。

这里有什么问题?

空的,没有点击按钮
空的

首先点击按钮
第一次点击

第二次点击按钮
第二次点击

0 投票
1 回答
111 浏览

scala.js - 带有超时的 ComponentDidMount 操作

我正在尝试在我的组件安装时执行一些操作,但不是立即执行。我的组件看起来像这样:

我得到类型不匹配。找到SetTimeoutHandle,需要react.Callback。

如何在 componentDidMount 中使用超时?

0 投票
1 回答
205 浏览

scala - scalajs-react 路由器。如何在条件路由中执行 ajax 请求

我正在尝试制作一些有条件的路线。条件在服务器端解决。

路由规则示例:

checkpermissions身体:

我在这里得到类型不匹配:(page: User) => checkPermissions(page.id)

是否可以在条件路由中执行 ajax 请求?

0 投票
1 回答
909 浏览

webpack - scalajs 和 webpack4 配置设置问题

我正在使用 webpack 4.20.2 和 scalajs ("0.6.24") ,scalajs bundler(0.13.1)

当我构建捆绑文件时,我遇到了 webpack 异常。我正在附加使用 webpack.config.dev.js 并生成 scalajs-webpack.config.js 的 build.sbt 。如果我在 build.sbt 中直接使用 scalajs-webpack.config.js 我使用 hack 来克服这个异常,那么我不会收到错误并且能够生成单个包文件但是当使用 webpack-dev-config.js 时,如下所示,然后我得到错误。

webpack.config.dev.js

生成 scalajs-webpack.config.js

构建.sbt

错误

webpack.config.shared.js

0 投票
1 回答
127 浏览

reactjs - React 简单的全局实体缓存而不是 Flux/React/etc

我正在写一个“有趣”的 Scala/Scala.js项目。

在我的服务器上,我有uuid-s 引用的实体(在Ref -s 内)。

为了“有趣”,我不想使用flux/redux架构,但仍然在客户端使用React(使用ScalaJS-React)。

我想做的是拥有一个简单的缓存,例如:

  • 当 ReactUserDisplayComponent想要显示Entity Useruuid=0003
  • 然后该render()方法调用Cache(作为 a 传入prop
  • 让我们假设这是第一次UserDisplayComponent要求这个特定的User(with uuid=0003) 并且Cache还没有它
  • 然后从服务器Cache获取AjaxCallUser
  • AjaxCall返回Cache触发器时re-render
  • 但 !现在,当组件请求Userfrom theCache时,它​​会立即User Entity从 the获取,Cache并且不会触发AjaxCall

我想实现的方式如下:

  • 我开始一个render()
  • 里面的“东西”render()要求Cache各种Entities
  • Cache返回其中一个LoadingEntity本身。
  • 在渲染结束时,Cache将所有AjaxRequest-s 发送到服务器并等待它们全部返回
  • 一旦所有AjaxRequests都返回(让我们假设它们返回 - 为了简单起见)Cache触发一个“ re-render()”,现在所有之前请求的实体都Cache立即提供。
  • 当然,新到达的Entity-s 可能会触发render()获取更多Entity-s 如果例如我加载一个Entity例如case class UserList(ul: List[Ref[User]])类型的。但是我们现在不用担心这个。

问题:

1)如果我以这种方式处理状态,我真的做错了吗?

2)是否有一个已经存在的解决方案?

我环顾四周,但一切都是 FLUX/REDUX 等......沿着这些思路...... - 为了:

  • “乐趣”
  • 好奇心
  • 勘探
  • 玩弄
  • 我认为这个简单的缓存对于我的用例来说会更简单,因为我想以一种简单的方式将基于“REF”的“域模型”传递给客户端:就好像客户端在服务器上并且网络将是无限的快速和零延迟(这是缓存将模拟的)。
0 投票
1 回答
305 浏览

scala.js - 如何渲染 React.Suspense?

我正在尝试在空白页面上呈现 React.Suspense,但失败并出现以下错误:

这是代码。它编译。这是否意味着 scalajs-react 或 scalajs 不是 100% 类型安全的?我应该怎么做才能解决问题?

这是项目文件。

build.properties:

构建.sbt:

索引.html:

0 投票
1 回答
58 浏览

scalajs-react - 有没有办法在组件中渲染 TagMod

假设我有一个定义如下的表:

我想将每一行部分包装在一个组件中:

代码不会编译,因为 render_P 需要 VdomNode 而不是 TagMod。有转换吗?

0 投票
1 回答
180 浏览

react-bootstrap - 我将如何使用 Scala Js React 构建 Bootstrap React 模态

如何使用 Scala.js React 库从 React Bootstrap 库创建模态组件?