TL; DR给出以下示例代码:
ReactDOM.render(<MyComponent prop1={someVar} />, someDomNode);
是否可以手动将React传递context
到的实例MyComponent
?
考虑到React的性质,我知道这听起来像一个奇怪的问题,但是用例是我将React与语义UI(SUI)混合在一起,并且这种特定情况是延迟加载SUI工具提示的内容(该工具提示的内容是首次显示工具提示时,使用与上述相同的代码模式生成一个React组件。因此,这不是由另一个React组件隐式创建的React组件,它似乎断了context
链。
我想知道是否可以手动保持context
链运行,而不是使用需要在context
AND中查找某些数据的组件props
。
反应版本:0.14.8
否。在进行0.14反应之前,存在方法React.withContext
,但已将其删除。
但是,您可以通过使用上下文创建HoC组件来做到这一点,就像这样:
import React from 'react';
function createContextProvider(context){
class ContextProvider extends React.Component {
getChildContext() {
return context;
}
render() {
return this.props.children;
}
}
ContextProvider.childContextTypes = {};
Object.keys(context).forEach(key => {
ContextProvider.childContextTypes[key] = React.PropTypes.any.isRequired;
});
return ContextProvider;
}
并按以下方式使用它:
const ContextProvider = createContextProvider(context);
ReactDOM.render(
<ContextProvider>
<MyComponent prop1={someVar} />
</ContextProvider>,
someDomNode
);
问题内容: 我有一个带有一些componentDidMount逻辑的React组件: 是否可以通过props传递此组件,以便componentDidMount()中的所有内容都被执行,以某种方式伪造以便截取屏幕截图?遵循以下原则: 我知道我可以使用,但是我有一些复杂的登录逻辑,我想使用这样的快捷方式来避免,而是将所有需要的道具直接传递给组件? 问题答案: 在这里回答了这个问题。让我们在这里尝试相同
在客户端,我想使用这个endpoint,但不确定如何在主体中传递字符串流(我不想将其设置为列表)
问题内容: 我不想使用jQuery,但我想使用Ajax进行文件上传。那可能吗? 如果是这样,我在哪里可以找到有关信息/教程? 问题答案: 不,无法使用javascript执行此操作。 但是,为了给人“ AJAX”的感觉,您可以向隐藏的iframe提交表单,然后将脚本结果输出到其中,然后从那里进行处理。Google 并从那里开始。 如果您使用的是jQuery,并且您的表单中包含任何文件字段,也可以使
在Vue 2.0应用程序中,假设我们有组件a、B和C。 A声明、登记和使用B 有可能把C从A传到B吗? 像这样的东西: 在B中使用C。 动机:我想创建一个通用组件,它在中使用,但从其子接收。实际上,将使用多次向其传递不同的“C”。 如果这种方法不正确,在Vue中正确的方法是什么? 回答@Saurabh 我没有作为道具通过,而是尝试了B中的建议。 基本上我是在尝试渲染设备,但是动态方式 我在控制台中
根据官方文档,提供搜索界面有两种方式:使用搜索对话框或小部件。我想注意使用这两种方法传递搜索上下文数据。 所以,留档说: ..您可以提供附加数据,以便系统发送到您的可搜索活动。您可以传递APP_DATA包中的附加数据,它包含在ACTION_SEARCH意图中。 要将此类数据传递给您的可搜索活动,请重写用户可以从中执行搜索的活动的onSearchRequest()方法,使用附加数据创建一个Bundl
问题内容: 是否可以取消使用隐藏iframe的文件上传? 我尝试将iframe的源设置为空字符串,但上传并未中断。 问题答案: iframe是承载表单过帐的传输渠道,因此Atanas是正确的,您必须停止iframe内部的传输。 这是一种取决于浏览器的方法: