我正在开发基本的 react 应用程序并遵循此 github react respository .
下面是项目目录中的文件夹结构(/opt/rqt/)
src/
├── App.css
├── actions.js
├── components
│ ├── App.js
│ ├── Footer.js
│ ├── Link.js
│ ├── Todo.js
│ └── TodoList.js
├── containers
│ ├── AddTodo.js
│ ├── FilterLink.js
│ └── VisibleTodoList.js
├── index.js
├── logo.svg
├── reducers
│ ├── index.js
│ ├── todos.js
│ └── visibilityFilter.js
└── registerServiceWorker.js
/src/index.js
import React from 'react'
import ReactDOM from 'react-dom'
import { createStore } from 'redux'
import { Provider } from 'react-redux'
import App from './components/App'
import reducer from './reducers'
// import todoApp from './reducers' // trial 2
import './App.css'
import registerServiceWorker from './registerServiceWorker';
registerServiceWorker();
const store = createStore(reducer);
// const store = createStore(todoApp); // trial 2
ReactDOM.render(
<Provider store={store}>
<App />
</Provider>,
document.getElementById('root')
);
/src/reducers/index.js
import { combineReducers } from 'redux'
import todos from './todos'
import visibilityFilter from './visibilityFilter'
const todoApp = combineReducers({
todos,
visibilityFilter
});
export default todoApp
但是当运行 npm start 时,它会在浏览器中出现以下错误
Failed to compile ./src/reducers.js Module build failed: Error: ENOENT: no such file or directory, open '/opt/rqt/src/reducers.js' at Error (native)
为什么只 react 查找文件名 reducers.js 而不是查找 reducers/index.js ?
还尝试附加 ./reducers/
但不起作用
这里有什么问题吗?
最佳答案
我在开始使用 React 时遇到了类似的问题。显然这是由 React DOM 中的错误引起的。还有类似的Github issue here .
我所做的是终止进程并重新安装依赖项 (npm install
)
然后,它与代码一起工作:
/src/reducers/index.js
export default combineReducers({
// Some Code Here
})
然后,您可以轻松地将其导入到 App.js 或 index.js 中:
import rootReducer from "../reducers"
因此,您可以将 rootReducer
替换为您喜欢的任何名称。
关于reactjs - React 无法从directory/index.js 导出文件,而是寻找directory.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47089384/