繁体   English   中英

React Native中ReactDOM和document.body的等效变量是什么? (世博会)

[英]What are the equivalent variables for ReactDOM and document.body in React Native? (Expo)

我正在构建用于Web上ReactJS的Modal组件。 我将Modal作为子项附加到document.body ,并根据需要安装/卸载。

这是图表(Stephen Grider的Udemy在线课程) 在此处输入图片说明

我的问题是React Native中没有ReactDOM或document.body。 这是我的modal.py

import React, { Component } from 'react';
import ReactDOM from 'react-dom';
import { store } from '../store';
import { Provider } from 'react-redux';
class Modal extends Component {
  comoponentDidMount() {
    this.modalTarget = document.createElement('div');
    this.modalTarget.className = 'modal';
    document.body.appendChild(this.modalTarget);
    this._render();
  }

  _render() {
    ReactDOM.render(
      <Provider store={store}>
        <div>{this.props.children}</div>
      </Provider>,
      this.modalTarget
    );
  }

  componentWillUpdate() {
    this._render();
  }

  componentWillUnmount() {
    ReactDOM.unmountComponentAtNode(this.modalTarget);
    document.body.removeChild(this.modalTarget);
  }

  render() {
    return <noscript />;
  }
}

我正在使用Expo,并且默认情况下正在加载App.js! 而且没有document.body和ReactDOM 我怎么解决这个问题?

我们在react-native中没有任何DOM。 您应该创建一个模态组件并将其导入要使用的其他组件中。 您的模态的位置必须是绝对的,并且要显示模态,可以向其传递一个道具。

您可以使用react native modal: https ://facebook.github.io/react-native/docs/modal.html或像这样的人创建的任何其他模式: https : //github.com/maxs15/react-native- modalbox

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM