ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

node.js 之 multer 图片上传组件示例

2021-01-05 12:32:36  阅读:200  来源: 互联网

标签:node 示例 res req js file cb var now


const express = require("express");
var multer = require("multer");
const path = require("path");

// // var upload = multer({ dest: "static/upload" }); //上传之前目录必须存在
// var storage = multer.diskStorage({
//   destination: function (req, file, cb) {
//     cb(null, "static/upload"); //上传之前目录必须存在
//   },
//   // 修改上传后的文件名
//   filename: function (req, file, cb) {
//     // 1、获取后缀名;
//     console.log(file.originalname);
//     let extname = path.extname(file.originalName);

//     // console.log(extname);
//     // 2、重命名文件名称
//     // cb(null, file.fieldname + "-" + Date.now() + extname);
//     cb(null, Date.now() + extname);
//   },
// });
console.log();
var storage = multer.diskStorage({
  destination: function (req, file, cb) {
    cb(null, "static/upload"); //上传之前目录必须存在
  },
  filename: function (req, file, cb) {
    var now = new Date();
    var month_int = now.getMonth() + 1; //月份从0开始算,0是1月份,要加一;
    // 用时间当做名称,也可以用 Date.now() 时间戳当名称
    var time = now.getFullYear().toString() + month_int.toString() + now.getDate().toString() + now.getHours().toString() + now.getMinutes().toString() + now.getSeconds().toString() + now.getMilliseconds().toString();
    let extname = path.extname(file.originalname);
    cb(null, time + extname);
    // cb(null, Date.now() + extname);
  },
});

var upload = multer({ storage: storage });

var router = express.Router();

router.get("/", (req, res) => {
  res.send("导航列表");
});

router.get("/add", (req, res) => {
  // res.send("添加导航");
  res.render("admin/nav/add");
});

router.get("/edit", (req, res) => {
  res.send("修改导航");
});

router.post("/doAdd", upload.single("pic"), (req, res) => {
  // var body = req.body;
  // console.log(body);
  // res.send("添加导航:" + body.title );
  console.log(req.body);
  res.send({
    body: req.body,
    file: req.file,
  });
});

router.post("/doEdit", (req, res) => {
  res.send("执行导航");
});

module.exports = router;

 

标签:node,示例,res,req,js,file,cb,var,now
来源: https://www.cnblogs.com/janty/p/14235063.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有