Так что я действительно потерян на этом.
Я использую Ubuntu и NVM для узла.
Я даже удалил версию узла, которая была установлена с помощью apt, чтобы убедиться, что
node --version
> v10.10.0
npm --version
> 6.4.1
Так что я create-react-app
и использую этот простой код
import React from 'react'
import ReactDOM from 'react-dom'
class App extends React.Component
{
componentDidMount()
{
const a = setTimeout(() => {return}, 5000)
console.log("a = ", a)
}
render()
{
return (
<div>
hello
</div>)
}
}
ReactDOM.render(<App />, document.getElementById('root'))
Тогда я npm start
. При доступе к странице консоль отображает число (a = 4). Однако https://nodejs.org/api/timers.html утверждает, что setTimeout
должен возвращать объект Timeout, а не идентификатор.
Это проблема для меня, потому что я хочу вызвать refresh
для сохраненной переменной и не могу прямо сейчас (я не нашел способов извлечь объект тайм-аута на основе идентификатора).
Это проблема с реакцией, которая не использует правильную версию узла? Или это регресс? Я тоже попробовал версию 10.2 без удачи.
Заранее спасибо!