안녕하세요 Meteor를 처음 접하고 반응하며 고객 포털에서 일하고 있습니다. 나는 그것이 작동하는 데 필요한 방식으로 작동하도록 meteor react 튜토리얼을 조정했으며 라우팅을 위해 Flow Router를 사용하고 있습니다. 내가 Uncaught Error: AppMount(...): Nothing was returned from render. This usually means a return statement is missing. Or, to render nothing, return null.
무엇을하든 여전히이 오류가 발생하는 것을 제외하고는 모든 것이 현재 정상적으로 작동합니다 .
다음은 기본 홈페이지에 대한 대부분의 코드와 라우팅을위한 코드입니다.
main.jsx
import AppMount from '/imports/ui/AppMount'
import "./routes"
Meteor.startup(() => {
render(<AppMount />, document.getElementById('root'))
})
AppMount.jsx
const AppMount = props => {
return (props.content);
}
export default AppMount
App.jsx
const App = () => {
const user = useTracker(() => Meteor.user());
const { tasks, isLoading } = useTracker(() => {
const noDataAvailable = { tasks: [] };
if (!Meteor.user()) {
return (noDataAvailable);
}
const handler = Meteor.subscribe('tasks');
if (!handler.ready()) {
return ({ ...noDataAvailable, isLoading: true });
}
const tasks = TasksCollection.find(
userFilter,
{
sort: { status: 1 },
}
).fetch();
return ({ tasks });
});
return(
<div className="app">
<Header />
<div className="main">
{user ? (
<Fragment>
<div className="menu">
{user.admin && (
<Fragment>
<button className="addUser" onClick={newUser} >
Add New User
</button>
<button className="addTask" onClick={addTask} >
Add Task
</button>
</Fragment>
)}
<button className="changePass" onClick={changePass} >
Change Password
</button>
<button className="user" onClick={logout} >
Logout: {user.username}
</button>
</div>
{isLoading && <div className="loading">loading..</div>}
<ul className="tasks">
{tasks.map(task => (
<Task
key={task._id}
task={task}
onCheckboxClick={toggleChecked}
onDeleteClick={deleteTask}
advanceStage={advanceStage}
revertStage={revertStage}
/>
))}
</ul>
</Fragment>
) : (
<LoginForm />
)}
</div>
</div>
);
}
export default App
route.jsx
FlowRouter.route('/', {
name: 'Home',
action() {
mount(AppMount, {
content: <App />
})
}
})
나는이 질문이 전에 요청되었음을 알고 있지만 모든 해결책을 아무 소용이 없다고 생각합니다.
도움을 주시면 감사하겠습니다.
props.content
필요한 것 {}
const AppMount = props => {
return {props.content};
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다