如何使用nodejade模板引擎打印网页的特定部分

how to print specific part of webpage using node-jade template engine

本文关键字:网页 定部 打印 引擎 何使用 nodejade      更新时间:2023-09-26

我读过与该主题相关的类似问题,但找不到具体的问题解决方案。

我已经从Git下载了一个invoicer项目,它运行得很好。我怀疑的是,我无法理解逻辑,因为我无法弄清楚如何只打印页面的特定部分,而在脚本中没有提到要打印哪个div标记。

这里是所有代码的链接Git-仓库

''app''server''路由一个名为invoice.js的文件,该文件具有打印功能,只有在单击发票打印时才能告诉加载什么。

exports.print = function print(req, res) {
    if (req.session.user == null) {
        res.redirect('/?from='+req.url);
    } else {
        if (req.query.id) {
            DB.invoices.findOne({_id:new ObjectID(req.query.id)},function(e, result) {
                result = helpers.formatMoney(result);
                res.render('print_invoice', { layout: 'print.jade' ,    locals: {   title: __("Invoice"), result : result, udata : req.session.user } });
            });
        } else {
            res.redirect('/invoices');
        }
    }
};

其重定向到下面的模板。

''app''server''views有一个名为print.jade的文件&print_invoice.jadeprint.jade是用于打印的布局文件,其中调用发票正文。

input(type="button", value=__("PRINT"), onclick="window.print()").btn.btn-primary

在这个打印页面上,只给出了window.print(),但我不明白它是如何知道打印哪个div和不打印什么的。

这是截图:网页打印页面

请帮我找出我缺少的东西。

非常感谢。

解决方案在搜索和阅读了很多关于so的解决方案后,我发现它非常简单,与jade或javascript无关,而是使用css完成的。

以下是如何:SO 的解决方案

感谢Stack溢出。