Coder Social home page Coder Social logo

express's Introduction

Express barebone template npm init -y npm i express npm i nodemon modify package.json: "start": "node index.js", "dev": "nodemon index.js",

Server static folder: app.use(express.static(path.join(__dirname, 'public'))); Serve file: app.get('/file', (req, res) => res.sendFile(path.join(__dirname, 'public', 'index.html'))); Server url: app.get('/', (req, res) => res.send('Hello express!!!'));

Add style: cd public; mkdir css; touch style.css; edit: body {background: black; color: white;} edit index.html:

Get json: const members = [{id: 1, name: 'xiaohong'}, {id: 2, name: 'xiaolan}]; app.get('/api/members', (req, res) => res.json(members));

Use separate json file: mkdir models; touch Members.js (use upper case for model) copy json, add "module.exports = members;" In index.js: const members = require('./models/Member');

Use middleware: const logger = (req, res, next) => { console.log("I'm the middleware"); next(); } app.use(logger);

log current time: const moment = require('moment'); inside middleware: console.log(${req.protocol}://${req.get('host')}${req.originalUrl}: ${moment().format()})

Move middleware to a file: mkdir middleware; touch logger.js; copy content, add "module.exports = logger;" Index.js: app.use(require('./middleware/logger.js));

Get ID from url: app.get('/api/members/:id', (req, res) => res.send(req.params.id));

Use filter: res.json(members.filter(m => m.id === parseInt(req.params.id)));

Use router: mkdir routes; cd routes; mkdir api; cd api; touch members.js const express = require('express'); const members = require('../../models/Members'); const router = express.Router(); route.get('/', func); router.get('/:id', func); module.exports = router; Index.js: app.use('/api/members', require('./routers/api/members'));

Post json api: index.js: app.use(express.json()); members.js: router.post('/', (req, res) => res.send(req.body)); or, members.push(newMember); res.json(members);

Modify id: router.put('/:id', (req, res) => { members.forEach(m => { if (m.id === parseInt(req.params.id)) { m.name = req.body.name; m.email = req.body.email; }}); res.json({msg: "found id", members});

Delete id: const found = members.findIndex(m => m.id === parseInt(req.params.id)); members.splice(found, 1); res.json(members);

Express-handlebars: https://github.com/ericf/express-handlebars npm i express-handlebars // views/main.handlebars, views/layouts/home.handlebars app.engine('handlebars', exphdb({defaultLayout: 'main'})); app.set('view engine', 'handlebars'); app.get('/', (req, res) => res.render('home', { someone: 'xiaohong', members })); main.handlebars:

<title>Members App</title>
{{{body}}}
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.bundle.min.js" integrity="sha384-6khuMg9gaYr5AxOqhkVIODVIvm9ynTT5J4V1cfthmT+emCG6yVmEZsRHdxlotUnm" crossorigin="anonymous"></script> home.handlebars:
Name
Email

Members is {{someone}}

{{#each members}}
  • {{name}}
  • {{/each}}

    Visit API

    Redirect from res.json to redirect: // res.json(members); res.redirect('/');

    express's People

    Contributors

    yuanyewa avatar

    Watchers

     avatar  avatar

    Recommend Projects

    • React photo React

      A declarative, efficient, and flexible JavaScript library for building user interfaces.

    • Vue.js photo Vue.js

      ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

    • Typescript photo Typescript

      TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

    • TensorFlow photo TensorFlow

      An Open Source Machine Learning Framework for Everyone

    • Django photo Django

      The Web framework for perfectionists with deadlines.

    • D3 photo D3

      Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

    Recommend Topics

    • javascript

      JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

    • web

      Some thing interesting about web. New door for the world.

    • server

      A server is a program made to process requests and deliver data to clients.

    • Machine learning

      Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

    • Game

      Some thing interesting about game, make everyone happy.

    Recommend Org

    • Facebook photo Facebook

      We are working to build community through open source technology. NB: members must have two-factor auth.

    • Microsoft photo Microsoft

      Open source projects and samples from Microsoft.

    • Google photo Google

      Google โค๏ธ Open Source for everyone.

    • D3 photo D3

      Data-Driven Documents codes.