node.js - bundle.js 404 (Not Found) -
i'm trying bundle react app using webpack client-side rendering , including bundle.js
in tag. however, whenever run app keep getting 404 (not found) bundle.js
. here webpack.config.js:
webpack.config.js
const path = require('path'); const config = { entry: ['babel-polyfill', './views/index.jsx'], output: { path: path.resolve(__dirname, 'public'), filename: 'bundle.js', publicpath: '/' }, module: { rules: [ { test: /\.(jsx|js)$/, exclude: /node_modules/ , use: 'babel-loader' } ] } }; module.exports = config;
./views/index.jsx
points main template file looks this:
index.jsx
import react 'react'; import layout './layout.jsx'; import cube './components/cube/cube.jsx'; class index extends react.component { render() { return ( <layout title={this.props.title}> <cube /> </layout> ); } } export default index;
where layout.jsx
i'm including <script src="/public/bundle.js">
:
layout.jsx
import react 'react'; class layout extends react.component { render() { return ( <html> <head> <title>{this.props.title}</title> <script type="text/javascript" src="/public/bundle.js"></script> </head> <body> {this.props.children} </body> </html> ); } } export default layout;
can me understand why isn't working? full project if helps: https://github.com/markscode/personalwebsite
i think might have me using server-side rendering express-react-views
package wrong?
thanks!
it doesn't telling express serve public folder @ all. you'll need explicitly let express know public folder should serve static files, so:
app.use(express.static('public'))
docs here: https://expressjs.com/en/starter/static-files.html
Comments
Post a Comment