我有一组组件呈现同一页面的不同部分。只要在其中一个内部提交操作,就应该锁定其他的操作(应该通过它们传播一个volatile标志,并触发一个禁用所有元素的javascript函数)
class FirstBlock extends React.Component {
constructor(props) {
super(props);
.......
}
}
render() {......}
}
class SecondBlock extends React.Component {
constructor(props) {
super(props);
.......
}
}
render() {......}
}
页面组件:
import FirstBlock from 'Components/FirstBlock';
import SecondBlock from 'Components/SecondBlock';
class PageBlock extends React.Component {
constructor(props) {
super(props);
.......
}
}
render() {
return (
<FirstBlock ... />
<SecondBlock ... />
);
}
}
有什么想法吗?我是新手,任何提示都会有帮助。
在(非常)一般的术语中,从父块传递一个事件处理程序到每个块中。当从其中一个触发操作时,在父级中处理该操作。如果需要根据哪个子级引发操作来改变行为,则需要为每个子级提供某种标识符,以便在调用处理程序时知道要做什么。
class PageBlock extends React.Component {
constructor(props) {
super(props);
.......
}
}
onAction = (id)=>{
// set isVolatile or do whatever you need to do
}
render() {
return (
<FirstBlock id={firstBlockId} onAction={this.onAction}... />
<SecondBlock id={secondBlockId} onAction={this.onAction}... />
);
}
}
class FirstBlock extends React.Component {
constructor(props) {
super(props);
.......
}
}
onAction = ()=>{
this.props.onAction(this.props.id)
}
render() {......}
}
其原则是将您的公共状态(即某个事件触发了某个操作)提升到父级,以便需要了解该状态的子级能够访问该状态。
问题内容: 我有一个下载器功能,可以并行下载多个文件。我使用以便下载同一文件的不同块。我想显示下载的状态栏。为此,我需要知道已经下载的总字节数()。 是否有一种方法可以设置将在所有这些进程和主进程之间共享的变量,以便每个进程都可以追加刚刚下载的字节数? 问题答案: 解决方案是利用新进程并传递共享的ctypes值:
问题内容: 我正在开发使用Meteor和React作为视图引擎的应用程序 考虑下图: 从另一个示例反应隐藏组件 当触发C4按钮单击事件时,我需要更改C2组件状态。由于他们没有直接关系,因此我无法直接从C4进入C2状态。 另一个示例是从Component提交表单并获取在另一个Component中声明的数据(输入字段的值)。 我知道可以通过一些技巧来解决此问题(例如,流星会话,通过每个组件传递数据,基
问题内容: 我有一个关于JAX-RS的非常基本的问题,但我无法以某种方式轻易找到答案。 我正在尝试将使用“标准” Javax servlet的REST服务重构为“手工”将请求路由到方法的“ REST服务”,使其成为“更干净的” JAX- RS实现。当前应用程序在servlet init()期间设置一些变量。它将那些属性分配为HttpServlet类的属性,因此它们在每个doGet()期间都可用,并
问题内容: 我正在使用“线程”模块在Python中进行项目。 如何创建一个全局变量(在我的情况下,我需要为True或False),以便项目中的所有线程(大约4-6)都可以访问? 问题答案: 我们可以在线程类外部定义变量,并在类的方法内部全局声明它。 请参见下面的简单示例,它交替打印AB。两个变量和在两个线程和之间共享。打印,然后设置为30。打印,因为已在中进行了修改。然后设置为20,再次用于中。这
(要求Workerman版本>=3.3.0) 源码地址:https://github.com/walkor/GlobalData 注意 GlobalData需要Workerman版本>=3.3.0 下载安装 可以使用composer安装,或者直接下载zip包https://github.com/walkor/GlobalData/archive/master.zip 。 原理 利用PHP的__se
问题内容: main.js total.js add.js remove.js console.log 背景: 我有一个应用程序(irc bot),我想添加一个功能,使偷看者可以执行@add 1或@remove1。我有一个main.js,然后根据所说的触发器需要不同的文件。因此,add将触发add.js文件,然后将需要require(’main.js’)并添加10(为简化起见,为10,它将解析该数