问题标签 [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 回答
263 浏览

jquery - 带有 Scala 的 Jquery 插件

任何人都知道如何在 scala js 代码中使用 jquery 插件bootstrap-multiselect 。

Scala.js 有一个包装了 jquery 的库,我想为 jquery 插件使用类似的静态类型代码

最后我想为这两个中的多选列表创建一个反应组件。任何替代方式也欢迎

谢谢

0 投票
1 回答
457 浏览

scala - 如何使用 sri / scala-react 创建点击回调?

我正在尝试使用sri和 scala-react/scala-js 为反应组件创建点击处理程序。

在以下代码中,onClick无法解析处理程序。我怀疑它需要一个类型注释或其他东西,但我已经从一个示例中复制了它(tick在此页面上搜索)。

这是我的代码:

0 投票
1 回答
382 浏览

scala.js - 更新单个子组件

我正在使用带有 scalajs-react 0.11.1 的二极管 1.0.0。

用例:

  • 带有子组件列表的父组件
  • 子模型片段包含Pot用于异步获取的图像
  • 子组件在挂载时获取图像并Pot更新Empty其模型片段

使用幼稚的方法,这会导致以下情况(事件的顺序可能不同):

  1. 父级被渲染。
  2. 孩子 1 被渲染。
    1. Child 1 发送它的GetImageAction. 模型片段Pot更新为Pending.
    2. 模型已更新,导致父级重新渲染。
    3. 所有的孩子都被重新渲染。
    4. 孩子 2 ... n 仍然有一个Empty Pot,所以他们GetImageAction再次触发他们的 s。
  3. 现在孩子 2 被渲染。
    1. 模型已更新,导致父级重新渲染。
    2. 等等。

这会导致GetImageAction调用和重新渲染的巨大树。

一些问题:

  1. 将模型用于此目的是错误的吗?使用组件状态会更好吗?
  2. 当只需要更新孩子时,如何避免重新渲染父母?我无法弄清楚我是否/如何可以shouldComponentUpdate用于此目的。

更新 1

我现在为每个子组件添加一个 React 键。这摆脱了关于唯一键的 React 警告,但不幸的是并没有解决上述问题。即使他们的shouldComponentUpdate方法返回,孩子也会被重新渲染false

来自ParentComponent.render()

更新 2

我尝试在父组件中实现侦听器功能,但不幸的是,子组件仍然被卸载并重新安装。这是我的父组件的代码:

0 投票
1 回答
500 浏览

scala.js - SVG 异物内的 HTML 不可见

我在 SVG 上苦苦挣扎,我通过foreignobject. 这是一个最小的组件:

问题是“Hello”文本不可见。但是,我可以在 Chrome 或 FF 中进行小的空白编辑,然后它变得可见:

在此处输入图像描述

更新:这个问题可以用普通的 React 重现,即它不是由 scalajs-react 抽象引起的。我刚刚将其发布为一个新的 SO 问题

0 投票
1 回答
68 浏览

reactjs - 用于 React 的 React API 规则 - 它们在哪里?

React 的 this 的 react api 规则是什么?

我问这个是因为我试图理解这段代码:

https://github.com/japgolly/scalajs-react/blob/master/core/src/main/scala/japgolly/scalajs/react/types.scala#L8

写在哪里:

他们指的是什么样的规则?我在哪里可以阅读这些规则?


这是谷歌给出的最接近的东西:

https://facebook.github.io/react/docs/top-level-api.html

这里有规则吗?

还是这个?

https://facebook.github.io/react/docs/component-specs.html

0 投票
1 回答
233 浏览

reactjs - scalajs-react 中的反应回调是什么?

这里是这样写的:

包括一个 CallbackTo[A] 类型,它捕获指定用于 React 回调的效果。

在这种情况下,什么是 React 回调?

0 投票
1 回答
426 浏览

scala.js - 在带有 scalajs-react 的 scalajs 中,如何将 scalajs 定义的组件传递给 javascript 定义的组件?

我的问题也在这里: https ://gist.github.com/somanythings/8c3d34de754af311d7826ea837d160b4

在将 scalajs 与 japgolly 的 scalajs-react ( https://github.com/japgolly/scalajs-react ) 库一起使用时。我正在尝试包装网格http://griddlegriddle.github.io/Griddle/customization.html 我想要一个自定义列,为此需要我传递一个包含组件的 columnMetadata 结构。

当我这样做时,我可以渲染一个没有属性的 scalajs 定义的组件,但是如果我尝试通过 renderP 访问属性,或者通过 renderS 访问属性,它们在渲染函数的范围内都是未定义的。如果我在浏览器中调试,它们的名称是绑定的,并且确实具有预期值。

当我打破

然后$.props是未定义的

我错过了什么?它是 ReactComponentB 调度中的简单输入问题吗?它是否与https://github.com/japgolly/scalajs-react/issues/157有某种关系,而我只是没看到如何?

0 投票
0 回答
73 浏览

scala - 展开/脱糖 scala 宏

我正在尝试通过包装现有的 JS-react 组件来编写自己的scalajs-react组件,以便可以从 scala.js 中使用它们。

我试图通过了解如何在这里完成来理解如何做到这一点。

问题是我对宏不是很了解,所以我想在不使用宏的情况下重写这一行。

我怎样才能做到这一点 ?

0 投票
1 回答
290 浏览

reactjs - 使用来自 scalajs-react 的高阶反应组件

我正在尝试使用库中的 Scala.js使用这个 更高阶的反应组件。scalajs-react

这是一个关于如何在 JS 中使用该组件的示例:

表达式({value}) => <li>{value}</li>desugars to(props) => { var value = props.value; return <li>{value}</li> }<li>{value}</li>JSX desugars toReact.createElement("li", null, value );但问题是我不知道如何将这个表达式 ( React.createElement("li", null, value );) 翻译成 Scala.JS。

({value}) => <li>{value}</li>最终在这里作为一个包装的组件)

我需要在 Scala.JS 中编写什么才能获得等价物React.createElement("li", null, value )

概括:

换句话说,如果我在 JS 中编写var element=React.createElement("li", null, value )并调用了生成的对象element,那么计算结果为完全相同的element对象 ( val element = ???) 的 Scala.JS 表达式是什么?

相关问题在这里

0 投票
0 回答
113 浏览

scalajs-react - scalajs-react 中的无状态反应组件

({value}) => <li>{value}</li>在 scalajs-react 中编写这个无状态反应组件的最简单方法是什么?

我在网上找到了以下相关链接,但他们没有回答这个问题:

https://gitter.im/japgolly/scalajs-react?at=557e2a0dc030cae67ed3a4c3 https://github.com/japgolly/scalajs-react/blob/master/core/src/main/scala/japgolly/scalajs/react/ReactComponentB .scala#L41 https://gitter.im/japgolly/scalajs-react?at=561705054e0fa3e55447ba98 http://www.gitterforum.com/discussion/japgolly-scalajs-react?page=269 https://gitter.im/ japgolly/scalajs-react?at=57ae33f90fd99f7041367604

这似乎是最接近答案的:

https://gitter.im/japgolly/scalajs-react?at=575347a19be9c5b637f07a00

我不确定这是否是无状态的反应组件。

FunctionalComponent无状态反应组件相同吗?

好的,似乎是:https ://gitter.im/japgolly/scalajs-react?at=575329dc9be9c5b637f074e8