问题标签 [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.
scala.js - 一些对 JS 库的引用无法解析
我正在尝试遵循 ScalaJS Book 教程。基于他们的 build.sbt 示例https://github.com/ochrons/scalajs-spa-tutorial/blob/master/build.sbt
我创建了以下 build.sbt
但是当我这样做时,sbt ~fastOptJS
我得到一个错误
scala - 如何理解这段代码行?
这段代码行在做什么?这是另一种表示法的语法糖吗?
scala.js - 带有超时的 ComponentDidMount 操作
我正在尝试在我的组件安装时执行一些操作,但不是立即执行。我的组件看起来像这样:
我得到类型不匹配。找到SetTimeoutHandle,需要react.Callback。
如何在 componentDidMount 中使用超时?
scala - scalajs-react 路由器。如何在条件路由中执行 ajax 请求
我正在尝试制作一些有条件的路线。条件在服务器端解决。
路由规则示例:
checkpermissions
身体:
我在这里得到类型不匹配:(page: User) => checkPermissions(page.id)
是否可以在条件路由中执行 ajax 请求?
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
reactjs - React 简单的全局实体缓存而不是 Flux/React/etc
我正在写一个“有趣”的 Scala/Scala.js项目。
在我的服务器上,我有uuid
-s 引用的实体(在Ref -s 内)。
为了“有趣”,我不想使用flux/redux架构,但仍然在客户端使用React(使用ScalaJS-React)。
我想做的是拥有一个简单的缓存,例如:
- 当 React
UserDisplayComponent
想要显示Entity
User
时uuid=0003
- 然后该
render()
方法调用Cache
(作为 a 传入prop
) - 让我们假设这是第一次
UserDisplayComponent
要求这个特定的User
(withuuid=0003
) 并且Cache
还没有它 - 然后从服务器
Cache
获取AjaxCall
User
- 当
AjaxCall
返回Cache
触发器时re-render
- 但 !现在,当组件请求
User
from theCache
时,它会立即User
Entity
从 the获取,Cache
并且不会触发AjaxCall
我想实现的方式如下:
- 我开始一个
render()
- 里面的“东西”
render()
要求Cache
各种Entities
Cache
返回其中一个Loading
或Entity
本身。- 在渲染结束时,
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”的“域模型”传递给客户端:就好像客户端在服务器上并且网络将是无限的快速和零延迟(这是缓存将模拟的)。
scala.js - 如何渲染 React.Suspense?
我正在尝试在空白页面上呈现 React.Suspense,但失败并出现以下错误:
这是代码。它编译。这是否意味着 scalajs-react 或 scalajs 不是 100% 类型安全的?我应该怎么做才能解决问题?
这是项目文件。
build.properties:
构建.sbt:
索引.html:
scalajs-react - 有没有办法在组件中渲染 TagMod
假设我有一个定义如下的表:
我想将每一行部分包装在一个组件中:
代码不会编译,因为 render_P 需要 VdomNode 而不是 TagMod。有转换吗?
react-bootstrap - 我将如何使用 Scala Js React 构建 Bootstrap React 模态
如何使用 Scala.js React 库从 React Bootstrap 库创建模态组件?