标签: pugjs

pugjs(玉)模板引擎加载css文件

我一直在GitHub上的例子中搜索,但我找不到如何将简单的css文件加载到我的布局中.我的第一个想法是做这样的事情,link(href="my.css")但它似乎根本不起作用.href指向正确的在线位置(检查和工作),因此也许我忘了什么?

css node.js pugjs pug

33
推荐指数
4
解决办法
5万
查看次数

帕格(以前的翡翠)变量不能正常工作(插值)正确的内部锚点Href

我正在玩Node和Express,我正在使用Pug(以前的Jade)模板引擎来渲染我的html.一切都工作正常,直到我开始尝试将变量注入href我的锚链接.奇怪的是,如果我改变我的Express应用程序view engine,jade那么事情就会按预期开始工作.

根据我读过的其他文章,这个问题似乎是一个插值问题,但我似乎无法找到显示如何正确解决此问题的资源或文档.

防爆.

我从roomsjson数组中提取数据,然后使用for循环遍历每个数组元素并输出每个房间的数据.使用jade以下作品.

table.table.table-striped
  thead
    tr
      th Name
      th Id
  tbody
    each room in rooms
      tr
        td(style="width: 50px;")
          a(href!="/admin/rooms/delete/#{room.id}") Delete
        td #{allTitleCase(room.name)}
        td #{room.id}
Run Code Online (Sandbox Code Playgroud)

使用pug上述方法无法正常工作.特别是a(href='/admin/rooms/delete/#{room.id}') Delete链接无法正常工作.它不是将房间id注入到链接href中,而是输出#{room.id}作为href链接的结尾部分.

任何想法如何解决这个问题pug

请注意,我已尝试使用以下所有pug选项,但这些选项均无效.

  • a(href="/admin/rooms/delete/#{room.id}") Delete
  • a(href!="/admin/rooms/delete/#{room.id}") Delete

node.js express pugjs pug

12
推荐指数
1
解决办法
1万
查看次数

错误:找不到模块'pug'

这是我的index.js文件:

const express = require('express')
const app = express()

app.set('views', __dirname + '/views');
app.set('view engine', 'pug')

app.get('/', function (req, res) {
  res.render('index', { title: 'Hey', message: 'Hello there!' })
})


app.listen(3333, function () {
  console.log('Example app listening on port 3333!')
})
Run Code Online (Sandbox Code Playgroud)

index.pug文件:

html
  head
    title= title
  body
    h1= Hello
Run Code Online (Sandbox Code Playgroud)

package.json文件:

{
  "name": "@npm-private/pug_with_node",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "express": …
Run Code Online (Sandbox Code Playgroud)

node.js pugjs pug

12
推荐指数
4
解决办法
1万
查看次数

如何将对象从哈巴狗传递到前端javascript

我正在使用帕格,我想将一个变量传递给前端以获取信息,但是当我尝试这样做时,它会像文本一样传递.

这就是我这样做的方式.

控制器代码:

res.render('view/edit', {
     title: 'Title',
     sub:true,
     data: variableObject
 });
Run Code Online (Sandbox Code Playgroud)

这是渲染视图中的代码:

script(type='text/javascript').
    var x = "#{data}"
    console.log(x);
Run Code Online (Sandbox Code Playgroud)

这是日志的结果

[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Run Code Online (Sandbox Code Playgroud)

我无法访问该对象因为是文本,有没有办法像对象一样传递对象?

javascript node.js pugjs

10
推荐指数
2
解决办法
4976
查看次数

如何在帕格的console.log?

我怎样才能在掌上电脑中调试来自后端的数据?

例如,这是我在expressjs中的后端:

    res.render("streams/show", {
        stream: cleanStream
    });
Run Code Online (Sandbox Code Playgroud)

在show.pug中,我想检查来自steam的数据:

- var species = stream.species;
- var fields = [];
- for (var key in species) fields.push(key)
- console.log(fields)
Run Code Online (Sandbox Code Playgroud)

我在Chrome上的Developer Tool上看不到任何内容.

有任何想法吗?

javascript express pugjs pug

8
推荐指数
1
解决办法
7513
查看次数

将jwt保存到本地存储

我目前正在开发一个节点表达postgresql应用程序,并且正在尝试实现Jsonwebtokens作为身份验证。我已经看过多个有关如何实现它的教程,并且在后端部分得到了实现的方法,但是通常会跳过前端,显然每个人都在用Postman测试他们的代码。

我还在线阅读了实现jwt身份验证的推荐方法是将生成的令牌存储在localstorage中,并在需要时将其发送到标头中。但是我无法找到完成的方法...

因此,我的问题是:

  1. 后端生成令牌后,如何将其存储在前端?(一个示例会很有帮助,因为我真的不太了解如何在前端javascript程序上获取令牌)
  2. 发出需要存储的http请求时,如何在标头上发送令牌?

authentication frontend node.js jwt pugjs

8
推荐指数
1
解决办法
3253
查看次数

Jade渲染后如何在两个<div>之间添加空格字符?

输入:

.a text1
.b text2
Run Code Online (Sandbox Code Playgroud)

输出将是:

<div class="a">text1</div><div class="b">text2</div>

第二个<div>接近第一个,没有任何空格或 LF。

然而,这是我真正想要得到的:

<div class="a">text1</div>
<div class="b">text2</div>
Run Code Online (Sandbox Code Playgroud)

或者:

<div class="a">text1</div> <div class="b">text2</div>
Run Code Online (Sandbox Code Playgroud)

因为我在使用时需要在它们之间留一个空格display:inline-block。我不想在 CSS 中设置边距。

有没有可能让玉不吃我的空间或LF?

谢谢,

html pugjs pug

5
推荐指数
1
解决办法
4378
查看次数

jade/pug 是否可以在 include 语句中使用变量?

我正在开发 nodejs 应用程序,但我在使用 include 语句时遇到了问题。当我像这样使用它时它会起作用:

include ../mixins/root.pug
Run Code Online (Sandbox Code Playgroud)

...但是可以在include上使用变量吗?

这些都不起作用:

include #{process.env.MIXINS_PATH}/root.pug
include !{process.env.MIXINS_PATH}/root.pug
include `${process.env.MIXINS_PATH}/root.pug`
Run Code Online (Sandbox Code Playgroud)

结果是这样的:

Error: ENOENT: no such file or directory
Run Code Online (Sandbox Code Playgroud)

javascript include node.js pugjs pug

5
推荐指数
1
解决办法
5797
查看次数

使用数据方法的HTML链接无效

我试图在AngularJS应用程序的视图中创建一个链接,只是为了发送数据方法DELETE.

我的路线:

app.delete('/logout', function(req, res) {
   req.session = null
   res.status(200)
   res.redirect('/')
})
Run Code Online (Sandbox Code Playgroud)

我的PugJS模板:

a(ng-href='/logout', data-method='delete', data-confirm='Are you sure?', rel='nofollow')
          span(translate) Logout  
Run Code Online (Sandbox Code Playgroud)

生成的HTML:

<a ng-href="/logout" data-method="delete" data-confirm="Are you sure?" rel="nofollow" class="" href="/logout">
   <span translate="translate" class="ng-scope">
      <span class="ng-scope">Logout</span>
   </span>
</a>
Run Code Online (Sandbox Code Playgroud)

但是,当我按照链接时,我收到以下消息:

Cannot GET /logout
Run Code Online (Sandbox Code Playgroud)

我认为数据方法不起作用.有人知道发生了什么吗?

谢谢你.

html angularjs pugjs

5
推荐指数
1
解决办法
99
查看次数

Jade就像.pug文件Visual Studio 2015的语法高亮一样

这可能是一个非常愚蠢的问题,但我找不到任何让它工作的选择.

在最近将npm软件包名称从jade更改为pug后,我已经将我项目中的所有.jade文件更改为.pug - 正如软件包所要求的那样.

这引起了一个琐碎的问题 - 在.pug文件中没有突出显示jade语法.更重要的是,我找不到在VS15中为.pug扩展文件添加玉编辑经验的选项.

在此输入图像描述

有人知道如何使它工作?

visual-studio-2015 pugjs pug

4
推荐指数
1
解决办法
2106
查看次数