如何解决无法使用Express
嗨,我正在尝试使用express来展示我的react应用,因为我将使用docker容器,但是当我使用res.render()
时,它会错误地指出无法找到模块'js'。
import express from 'express';
import path from 'path';
import expressReactViews from 'express-react-views';
const app = express();
// Constants
const PORT = 8080;
const HOST = '0.0.0.0';
var __dirname = path.resolve();
app.set('view engine','jsx');
app.engine('jsx',expressReactViews.createEngine())
app.use(express.static(path.join(__dirname,"..","public")));
app.use(express.static("public"));
app.use((req,res,next) => {
res.render(path.join(__dirname,"index.js"));
});
解决方法
首先检查您的package.json(如果包含),然后尝试npm install
。
其次使用通用js而不是使用import use require。
const express = require("express");
const path = require("path");
如果仍然无法正常工作,则可能找不到index.js的路径位置
,如果使用React,则应该返回HTML文件。您也不需要视图引擎。
res.render(path.join(__dirname,"..","index.html"));
其中
".."
是您的构建文件夹的路径。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。