Javascript 在类组件方法中使用函数组件
我没有语法错误,代码编译得很好,但是调用的函数组件“SuccessfulModal”从未被呈现 我的功能组件 我的类组件 渲染方法Javascript 在类组件方法中使用函数组件,javascript,reactjs,Javascript,Reactjs,我没有语法错误,代码编译得很好,但是调用的函数组件“SuccessfulModal”从未被呈现 我的功能组件 我的类组件 渲染方法 问题是你只是在一个方法上返回它 相反,请尝试将“添加到状态showmodel”添加为false,然后在请求和设置showmodel:true时,在渲染方法中添加,如果showmodel为true,则渲染`: state = { open: false, revisionId: "", showModal: false } saveOnClick = (
问题是你只是在一个方法上返回它 相反,请尝试将“添加到状态showmodel”添加为false,然后在请求和设置showmodel:true时,在渲染方法中添加,如果showmodel为true,则渲染`:
state = {
open: false,
revisionId: "",
showModal: false
}
saveOnClick = () => {
axios.put('http://localhost:8080/lagbevakning/revision/revisionsubscription', {
revisionId: 36,
})
.then((response) => {
console.log(response) /* Gets called */
this.setState({
open: false,
showModal: true
}) /* Gets called */
})
render(){
const { showModal } = this.state;
return (
{ showModal && <SuccessfulModal />}
)
}```
问题是你只是在一个方法上返回它 相反,请尝试将“添加到状态showmodel”添加为false,然后在请求和设置showmodel:true时,在渲染方法中添加,如果showmodel为true,则渲染`:
state = {
open: false,
revisionId: "",
showModal: false
}
saveOnClick = () => {
axios.put('http://localhost:8080/lagbevakning/revision/revisionsubscription', {
revisionId: 36,
})
.then((response) => {
console.log(response) /* Gets called */
this.setState({
open: false,
showModal: true
}) /* Gets called */
})
render(){
const { showModal } = this.state;
return (
{ showModal && <SuccessfulModal />}
)
}```
axios请求中提供给的函数返回的内容不会用于组件渲染 您可以改为更改一段状态,并在render方法中使用该状态来确定是否应渲染SuccessfulModal组件 范例 const{useffect}=React; 函数成功模式{ 常量hello==>{ 欢迎:; }; 你好,[]; 返回成功模式; } 类确认模式扩展了React.Component{ 状态={ 开放:假 }; 组件安装{ 设置超时=>{ this.setState{open:true}; }, 1000; } 渲染{ 返回this.state.open?:空; } } ReactDOM.render、document.getElementByIdroot;
axios请求中提供给的函数返回的内容不会用于组件渲染 您可以改为更改一段状态,并在render方法中使用该状态来确定是否应渲染SuccessfulModal组件 范例 const{useffect}=React; 函数成功模式{ 常量hello==>{ 欢迎:; }; 你好,[]; 返回成功模式; } 类确认模式扩展了React.Component{ 状态={ 开放:假 }; 组件安装{ 设置超时=>{ this.setState{open:true}; }, 1000; } 渲染{ 返回this.state.open?:空; } } ReactDOM.render、document.getElementByIdroot;
我认为问题在于返回元素而不是渲染它。它需要在DOM上渲染,因为它没有render方法。在你的情况下,如果你必须做一个渲染,你会这样做 请执行npm安装react dom,然后,如果您使用ES6,您可以执行以下操作:
import ReactDOM from 'react-dom';
或者,如果您正在使用ES5,您可以:
var ReactDOM = require('react-dom')
我会把最后一行改成
ReactDOM.render(<SuccessfulModal/>, document.getElementById('root');
现在,假设root是应用程序的主div,元素就可以呈现了 我认为问题在于返回元素而不是渲染它。它需要在DOM上渲染,因为它没有render方法。在你的情况下,如果你必须做一个渲染,你会这样做 请执行npm安装react dom,然后,如果您使用ES6,您可以执行以下操作:
import ReactDOM from 'react-dom';
或者,如果您正在使用ES5,您可以:
var ReactDOM = require('react-dom')
我会把最后一行改成
ReactDOM.render(<SuccessfulModal/>, document.getElementById('root');
现在,假设root是应用程序的主div,元素就可以呈现了 这不是React的工作方式。。。。。。如果您的类中没有呈现方法,那么将无法呈现任何内容。请显示呈现方法以确认它是否存在-如果您不向我们显示所呈现的内容,则无法知道为什么呈现错误!对不起,请换个新的形象。这不是React的工作原理。。。。。。如果您的类中没有呈现方法,那么将无法呈现任何内容。请显示呈现方法以确认它是否存在-如果您不向我们显示所呈现的内容,则无法知道为什么呈现错误!对不起,请换个新的形象。