首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将上下文从DrizzleContext.Provider发送到类组件/类容器

如何将上下文从DrizzleContext.Provider发送到类组件/类容器
EN

Ethereum用户
提问于 2019-01-14 13:22:24
回答 1查看 280关注 0票数 0

我在我的dapp中使用了新的上下文API支持的‘微雨-反应’库。谁能说明如何接收从DrizzleContext.Provider发送到“类”组件的上下文?查看下面的示例index.js文件。假设< App />组件是“类”组件,而不是“函数组件”。对于“函数”组件,我想它非常简单--使用< DrizzleContext.Consumer >。但是,如何在类组件中获取上下文(微流={微口})?我尝试给一个构造函数提供上下文支持,如下所示:

代码语言:javascript
运行
复制
constructor(props,context) {...}

但这不管用。有什么想法吗?

我的index.js看起来是这样的:

代码语言:javascript
运行
复制
<!-- language: lang-jsx -->
    import React from 'react';
    import ReactDOM from 'react-dom';
    import { Drizzle, generateStore } from "drizzle";
    import { DrizzleContext } from "drizzle-react";
    import { LoadingContainer } from 'drizzle-react-components'
    import './index.css';
    import App from './App';
    //import * as serviceWorker from './serviceWorker';
    import drizzleOptions from './drizzleOptions';

    const drizzleStore = generateStore(drizzleOptions);
    const drizzle = new Drizzle(drizzleOptions, drizzleStore);

        ReactDOM.render(
            (<DrizzleContext.Provider drizzle={drizzle} >
                    <App />
            </DrizzleContext.Provider>),
            document.getElementById('root')
        );
EN

回答 1

Ethereum用户

回答已采纳

发布于 2019-01-15 09:51:47

结果表明,可以使用此语句获取类组件中的上下文:

代码语言:javascript
运行
复制
MyClassComponent.contextType = DrizzleContext.Consumer;

现在,如果我们在构造函数中使用以下上下文:

代码语言:javascript
运行
复制
constructor(props,context) {
super(props)
console.log(this.context);
}

这将向控制台输出上下文对象{ drizzleState,初始化}。尽管我不确定MyClassComponent.contextType是否正确,因为我认为它是遗留上下文API的一部分(如果我错了,请纠正我)。

票数 0
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/65535

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档