JSbarcode не отображается

#node.js #express #pug #barcode #jsbarcode

#node.js #выразить #pug #штрих-код #jsbarcode

Вопрос:

Я пытаюсь создать маршрут в приложении nodejs, которое генерирует штрих-код из ObjectId в шаблоне jade, однако, поскольку я включил свой маршрут и обновил, изображения не отображаются.

Я прочитал документацию и пробовал разные методы, но она все еще не отображается.

Вот мой barcode.js

 var express = require('express');
var router = express.Router();
var JsBarcode = require('jsbarcode');

router.get('/', function(req, res, next) {
res.render('barcode', { title: 'Barcode' });

JsBarcode("#barcode", "Hi!");


});

module.exports = router;
  

Вот мой шаблон jade:

 doctype html
html
    head
        title= title

 svg#barcode
  

Когда я обновляю страницу, ничего не отображается (пустая страница)

То, что я пытаюсь сделать, это сначала отобразить изображение, а затем, в конечном итоге, добавить больше логики.

Ответ №1:

После res.render у вас не может быть ни одной строки кода, так как страница будет отображаться.

Измените свой barcode.js файл, как указано ниже

 var express = require('express');
var router = express.Router();

router.get('/', function(req, res, next) {
  res.render('barcode', { title: 'barcode' });
});

module.exports = router;
  

Измените свой штрих-код.нефритовый файл, как указано ниже

 doctype html
html
  head
    title= title
  body
    svg#barcode
    script(src="https://cdn.jsdelivr.net/npm/jsbarcode@3.8.0/dist/JsBarcode.all.min.js")
    script.
      JsBarcode("#barcode", "Hi!");
  

Это должно дать вам штрих-код на странице. Затем вы могли бы рассмотреть возможность отправки ObjectId в файл jade для создания нового штрих-кода.