Nodejs Jade里头能进行简单的计算不?
Nodejs Jade里头能进行简单的计算不?
例如把后台两个传过来的值做加法。。?
当然可以。在Node.js中使用Jade(现在称为Pug)模板引擎时,你可以在模板中执行简单的计算操作。以下是一个具体的例子来展示如何在Jade模板中实现两个变量的加法。
示例代码
首先,我们假设有一个Node.js服务器端代码,它将两个数值传递给Jade模板:
// server.js
const express = require('express');
const app = express();
const port = 3000;
app.set('view engine', 'pug'); // 设置模板引擎为Pug
app.get('/', (req, res) => {
const num1 = 5;
const num2 = 7;
res.render('index', { num1, num2 });
});
app.listen(port, () => {
console.log(`Server running at http://localhost:${port}/`);
});
在这个例子中,我们创建了一个Express应用,并设置了视图引擎为Pug。当用户访问主页时,服务器会渲染一个名为index.pug
的模板,并向其传递两个数字num1
和num2
。
接下来,我们编写Pug模板文件index.pug
:
// views/index.pug
doctype html
html
head
title Node.js Pug Template Example
body
h1 简单计算示例
p #{num1} 加上 #{num2} 的结果是:
p= num1 + num2
在这个模板中,我们通过#{}
语法插入了num1
和num2
的值,并直接在HTML标签之间使用了表达式num1 + num2
来计算它们的和并显示结果。
解释
- 服务器端代码:我们创建了一个简单的Express应用,该应用将两个数字传递给Jade模板。
- Jade/Pug模板:模板中使用了JavaScript表达式
#{}
来插入变量值,并直接使用=
后跟一个JavaScript表达式来计算和显示结果。
通过这种方式,你可以在Node.js和Jade/Pug模板中轻松地执行简单的数学运算。这使得动态生成网页内容变得更加灵活和强大。
jade 里可以执行js代码
// - var x =a // - var nh=parseFloat(fw)+parseFloat(mains[‘ship_cost’]) 主要是以 -声明此行为JS
当然能计算,而且有好几种方法哦
!!! 5
html
head
title my jade template
body
h1 Hello #{a + b} //渲染出来<h1>Hello 7</h1>
{“a”: 3,“b”:4} //输入
https://github.com/backsapce/nodeclub Jade中文README http://naltatis.github.io/jade-syntax-docs/ 试玩Jade
在Node.js中使用Jade(现称为Pug)模板引擎时,Jade本身并不直接支持复杂的逻辑运算。不过,你可以在将数据传递给Jade模板之前,在Node.js后端完成所有的计算,然后将结果传递给前端。
示例代码
Node.js 后端代码
// app.js
const express = require('express');
const app = express();
app.set('view engine', 'pug');
app.get('/', (req, res) => {
const value1 = 5;
const value2 = 10;
// 在服务器端完成计算
const sum = value1 + value2;
// 将计算结果传递给模板
res.render('index', { sum: sum });
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
Jade/Pug 模板代码
// views/index.pug
doctype
html
head
title= 'Node.js and Pug'
body
h1 Sum of two values
p The sum is #{sum}
在这个例子中,我们首先在Node.js后端完成了value1
和value2
的加法运算,并将结果存储在变量sum
中。然后,我们将sum
作为参数传递给res.render()
方法,将其渲染到模板中。
解释
- Node.js 后端:负责处理HTTP请求、执行计算并准备数据。
- Jade/Pug 模板:只负责展示已经计算好的数据。Jade中的
#{sum}
语法用于插入服务器端传递的数据。
这种方法保持了前后端职责分离,使得代码更清晰且易于维护。如果你需要在客户端(浏览器)执行某些逻辑,可以考虑使用JavaScript来实现。