【问题标题】:I am not getting any output & error and i don't know why我没有得到任何输出和错误,我不知道为什么
【发布时间】:2022-10-23 13:01:44
【问题描述】:

我没有得到任何输出,我不知道为什么,但我在浏览器和命令提示符中都没有收到错误,所以我不清楚发生了什么。我在执行开始时遇到了一个错误,如下所示:

WebSocketClient.js:16 WebSocket 连接到 'ws://localhost:3000/ws' 失败

然后错误消失并且在重新加载后没有出现,我在谷歌中只得到一个错误,比如错误:

加载资源失败:服务器响应状态为 404(未找到)

在浏览器中执行时出现此错误。所以我不知道错误本身是什么

这是我的服务器端代码

import express from "express";
import bodyParser from "body-parser";
import mongoose from "mongoose";
import cors from "cors";
import postRoutes from "./routes/posts.js";

const app = express();

app.use(bodyParser.json({ limit: "30mb", extended: true }));
app.use(bodyParser.urlencoded({ limit: "30mb", extended: true }));
app.use(cors());
app.use("/posts",postRoutes);


// mongodb connection
const CONNECTION_URL = "mongodb+srv://memory:memory1213@abscluster.f5vt7.mongodb.net/? 
retryWrites=true&w=majority";
const PORT = process.env.PORT || 5000;

mongoose.connect(CONNECTION_URL, { useNewUrlParser:true, useUnifiedTopology: true })
.then(() => app.listen(PORT, () => {
    console.log("server running on port :",PORT)
}))
.catch((error) => console.log(error.message))

/* mongoose.set("useFindAndModify", false); */

客户端(app.js)

import React,{useEffect} from "react";
import { Container, AppBar, Typography, Grow, Grid} from "@material-ui/core";
import { useDispatch } from "react-redux";
import {getPosts} from "./actions/posts";
import memories from "./images/memories-Logo.png"
import Posts from "./components/Posts/Posts";
import Form from "./components/Form/Form";
import useStyles from "./styles";

function App() {
  const classes = useStyles();
  const dispatch = useDispatch();

  useEffect(()=> {
    dispatch(getPosts());
  },[getPosts])
  return (
    <Container maxWidth="lg">
      <AppBar className={classes.appBar} position="static" color="inherit">
        <Typography className={classes.heading} variant="h2" align="center">Memories</Typography>
        <img className={classes.image} src={memories} alt="memories" height="60"/>
      </AppBar>
      <Grow in>
        <Container>
          <Grid container justifyContent="space-between" alignItems="stretch" spacing={3}>
            <Grid item xs={12} sm={7}>
                <Posts />
            </Grid>
            <Grid item xs={12} sm={4}>
                <Form />
            </Grid>
          </Grid>
        </Container>
      </Grow>
    </Container>
  );
}

export default App;

客户端(index.js)

import React from 'react';
import ReactDOM from 'react-dom/client';
import './index.css';
import App from './App';
import reportWebVitals from './reportWebVitals';
import { Provider } from "react-redux";
import { legacy_createStore, applyMiddleware, compose } from "redux";
import thunk from 'redux-thunk';
import reducers from "./reducers"

const store = legacy_createStore(reducers, compose(applyMiddleware(thunk)))

const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
  <Provider store={store}>
    <App />
  </Provider>
);

reportWebVitals();

【问题讨论】:

  • 能否请您分享 git 中的代码,以便我可以安装并检查问题所在?我也想看看posts.js的代码是什么
  • 我将分享链接:github.com/Abraar07/Nodejs-AOSC 并感谢您尝试帮助我。
  • 我一定会检查并回复你
  • 我无法连接数据库,因为我的 IP 未列入白名单,如果我直接运行,则会在提交表单时显示此消息 { "message": "Operation postmessages.insertOne() buffering timed out after 10000ms" }
  • 我注释了猫鼬连接代码并将其添加到文件的末尾 app.listen(PORT, () => console.log(Listening on port ${PORT}));

标签: javascript node.js reactjs mongodb express


【解决方案1】:

改变这个 const posts = useStyles(); to const posts = useSelector((state) => state.posts);

我想你在这里打错了,但如果你在上面使用它会显示

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多