javascript - 如何使 Aux 在反应中工作(高阶组件)
问题描述
大家好,我在渲染 Aux 元素时遇到问题。我想渲染传递给 Aux 的子元素,但不在同一个 div 下。
React.fragment 可以将它作为数组传递也可以,但是当我将它作为 Aux 传递时,会出现错误。
编码
应用程序.js
import React, {Component} from 'react';
import Layout from './components/Layout/Layout';
class App extends Component {
render() {
return (
<div key="app1">
<Layout>
<p>Hello world</p>
</Layout>
</div>
);
}
}
export default App;
索引.js
import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import App from './App';
import * as serviceWorker from './serviceWorker';
ReactDOM.render(<App />, document.getElementById('root'));
serviceWorker.unregister();
布局.js
辅助.js
import React from 'react';
import Aux from '../../hco/Aux';
const layout = ( props ) => (
<Aux>
<div>Toolbar, SideDrawer, Backdrop</div>
<main>
{props.children}
</main>
</Aux>
);
export default layout;**
谷歌浏览器控制台中的错误:
**
第一个镀铬错误:
Uncaught Error: aux(...): Nothing was returned from render. This usually means a return statement is missing. Or, to render nothing, return null.
at reconcileChildFibers (react-dom.development.js:15675)
at reconcileChildren (react-dom.development.js:18093)
at mountIndeterminateComponent (react-dom.development.js:18833)
at beginWork$1 (react-dom.development.js:20121)
at HTMLUnknownElement.callCallback (react-dom.development.js:337)
at Object.invokeGuardedCallbackDev (react-dom.development.js:386)
at invokeGuardedCallback (react-dom.development.js:439)
at beginWork$$1 (react-dom.development.js:25723)
at performUnitOfWork (react-dom.development.js:24646)
at workLoopSync (react-dom.development.js:24622)
at performSyncWorkOnRoot (react-dom.development.js:24211)
at scheduleUpdateOnFiber (react-dom.development.js:23638)
at updateContainer (react-dom.development.js:27047)
at react-dom.development.js:27464
at unbatchedUpdates (react-dom.development.js:24376)
at legacyRenderSubtreeIntoContainer (react-dom.development.js:27463)
at Object.render (react-dom.development.js:27548)
at Module../src/index.js (index.js:7)
at __webpack_require__ (bootstrap:785)
at fn (bootstrap:150)
at Object.0 (serviceWorker.js:135)
at __webpack_require__ (bootstrap:785)
at checkDeferredModules (bootstrap:45)
at Array.webpackJsonpCallback [as push] (bootstrap:32)
at main.chunk.js:1
第二个镀铬错误:
index.js:1375 The above error occurred in the <aux> component:
in aux (at Layout.js:8)
in layout (at App.js:9)
in div (at App.js:8)
in App (at src/index.js:7)
Consider adding an error boundary to your tree to customize error handling behavior.
Visit /react-error-boundaries to learn more about error boundaries.
第三个镀铬错误:
Uncaught Error: aux(...): Nothing was returned from render. This usually means a return statement is missing. Or, to render nothing, return null.
at reconcileChildFibers (react-dom.development.js:15675)
at reconcileChildren (react-dom.development.js:18093)
at mountIndeterminateComponent (react-dom.development.js:18833)
at beginWork$1 (react-dom.development.js:20121)
at HTMLUnknownElement.callCallback (react-dom.development.js:337)
at Object.invokeGuardedCallbackDev (react-dom.development.js:386)
at invokeGuardedCallback (react-dom.development.js:439)
at beginWork$$1 (react-dom.development.js:25723)
at performUnitOfWork (react-dom.development.js:24646)
at workLoopSync (react-dom.development.js:24622)
at performSyncWorkOnRoot (react-dom.development.js:24211)
at scheduleUpdateOnFiber (react-dom.development.js:23638)
at updateContainer (react-dom.development.js:27047)
at react-dom.development.js:27464
at unbatchedUpdates (react-dom.development.js:24376)
at legacyRenderSubtreeIntoContainer (react-dom.development.js:27463)
at Object.render (react-dom.development.js:27548)
at Module../src/index.js (index.js:7)
at __webpack_require__ (bootstrap:785)
at fn (bootstrap:150)
at Object.0 (serviceWorker.js:135)
at __webpack_require__ (bootstrap:785)
at checkDeferredModules (bootstrap:45)
at Array.webpackJsonpCallback [as push] (bootstrap:32)
at main.chunk.js:1
解决方案
我建议使用 React 片段,它们做同样的事情:https ://reactjs.org/docs/fragments.html
推荐阅读
- python - 如何根据定义的日期范围为每个组创建更多行?
- android - 如何指定 URL 深层链接 android 清单
- php - 在 php 数组中移动值
- google-sheets - 忽略空单元格的 ImportRange 函数
- reactjs - 使用 setInterval 动态改变图像
- python - == 或 != 在链式比较中是否有用?
- azure-cosmosdb - Azure Cosmos DB Mongo API 存储过程
- android - FirebaseUI 导入:库 com.google.android.gms:play-services-basement 正在被其他各种库请求
- java - 错误:Java:无效的目标版本:11 - IntelliJ IDEA
- python - 如何使用 Selenium 和 BeautifulSoup 从标签中获取文本