如何查看玉器上传的图片

时间:2013-04-29 15:57:06

标签: image node.js express mongoose pug

我想知道如何在jade中查看上传的图片这里是我的一些代码示例

上传图片

 app.post('/add', function (req, res, next) {
   var person = new Person({
     image: './public/images/' + req.files.person.image.name;
   });

   var tmp_path = req.files.person.image.path;
   var target_path = './public/images/' + req.files.person.image.name;

   fs.rename(tmp_path, target_path, function (err) {
    if (err) {
      return next(new Error(err));
    }

    fs.unlink(tmp_path, function (err) {
      if (err) {
        console.log(err);
      }

      person.save(function (err) {
        if (err) {
          return next(new Error(err.message));
        }

        res.redirect('/view/' + person._id);
      });
    });
  });
});

人物查看页面

app.get('/view/:id', function (req, res, next) {
  Person.findById(req.params.id, function (err, person) {
    if (err) {
      return next(new Error(err));
    }

    if (!person) {
      return next(new Error('Invalid reference to person information'));
    }

    fs.readFile(person.image, 'binary', function (err, file) {
      if (err) {
        return next(new Error(err));
      } else {
        res.render(path + 'view', {
          title: title,
          person: person,
          file: file
        });
      }
    });
  });
});

在我的view.jade中我用来显示图片

img(src='#{file}')

但它没有显示,有人请帮助我!!

3 个答案:

答案 0 :(得分:0)

file视为parens

中的javascript变量
img(src=file)

答案 1 :(得分:0)

你可以尝试img(src ='#{locals.file}')

答案 2 :(得分:0)

这段代码让我用Jade显示图像。

 .image-block
      h2 
      img(src="/image.jpg" alt="image not found")

img(src="/#{pathTOImage}" alt="image not found")

在帕格你必须写这样的代码:

img(src="/" + pathTOImage)