运行index.js遇SyntaxError: Unexpected token '<'错误,求排查与解决
问题原因分析
这个错误和MongoDB连接配置无关,核心问题出在文件的运行方式与代码类型不匹配:
- 你当前的
index.js是React前端项目的入口文件,里面包含了JSX语法(比如<React.StrictMode>这类带<的标签)。Node.js默认只能解析标准JavaScript代码,无法识别JSX语法,直接用node index.js运行时,碰到<符号就会抛出语法错误。 - React项目的前端代码需要通过构建工具(比如create-react-app自带的
npm start命令)编译后运行,不能直接用node命令执行。
另外还有一个关键问题:数据库连接代码不应该写在前端文件里。前端代码会被打包后暴露给浏览器,你的MongoDB连接字符串会直接泄露给所有访问网站的用户,存在严重安全风险。而且前端环境也不适合直接连接数据库,正确的做法是:
- 单独创建一个后端Node.js服务,在后端代码中配置MongoDB连接
- 前端通过调用后端提供的API接口来实现与数据库的交互
内容的提问来源于stack exchange,提问作者Ismael Sanchez
相关产品推荐
相关产品推荐

