小编Ada*_*ior的帖子

React Hook "useEffect" 被有条件地调用

React 抱怨下面的代码,说它 useEffect 被有条件地调用:

import React, { useEffect, useState } from 'react'
import VerifiedUserOutlined from '@material-ui/icons/VerifiedUserOutlined'
import withStyles from '@material-ui/core/styles/withStyles'
import firebase from '../firebase'
import { withRouter } from 'react-router-dom'

function Dashboard(props) {
  const { classes } = props
  
  const [quote, setQuote] = useState('')

	if(!firebase.getCurrentUsername()) {
		// not logged in
		alert('Please login first')
		props.history.replace('/login')
		return null
	}

	useEffect(() => {
		firebase.getCurrentUserQuote().then(setQuote)
	})

	return (
		<main>
			// some code here
		</main>
	)

	async function logout() {
		await firebase.logout()
		props.history.push('/')
	}
} …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-hooks

49
推荐指数
3
解决办法
8万
查看次数

标签 统计

javascript ×1

react-hooks ×1

reactjs ×1