我的 index.pug 文件如下所示:
head
script(type="text/javascript").
var isMobile = (screen.width || window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth) <= 480;
body
if isMobile
include nav_mobile
else
include nav
我写了上面的代码,但没有得到想要的结果。 (isMobile
似乎总是null
)
如何获取JavaScript变量的值以进行修改?
答案 0 :(得分:1)
有多种方法可以获取屏幕尺寸。具体来说,哈巴狗,我建议编写一个包含脚本的页面,该脚本将屏幕大小和redirects移至正确的端点,或将详细信息添加到会话或URL查询中,然后将其发送到服务器,然后您可以将它们带上路线并将其传递到pug renderer。
将来,我建议使用CSS处理移动/桌面设计,而不要使用JavaScript来处理。因为如果在任何一个版本上更改屏幕大小都不会改变设计,则必须重新加载页面。
答案 1 :(得分:0)
在呈现该视图的请求处理程序中,您必须传递要在视图中访问的变量列表
app.get('/', function (req, res) {
// your code goes here
// you pass each variable in the second parameter to the render method of response object
res.render('index', { isMobile: true });
});