1

我是第一次使用 Jade + Express,只是在玩弄它看看能做什么。

我正在使用 Brian Fords种子应用程序作为我学习的基础,同时也是第一次使用 Jade(模板引擎)。

但是,当我尝试写出一个新index.jade文件时,Express 不断给我语法错误或缩进标记错误。

这是我试图使用的代码。

doctype 5
   html(lang="en" ng-app="myApp")
   head
     meta(charset='utf8')
     base(href='/')
     link(rel='stylesheet' href='/css/app.css')
     title= pageTitle
   body
     block body

任何帮助,将不胜感激 :)

编辑

给出的错误是:

500 Error: /Users/Keva161/Documents/Web Dev/Webapps/Node/angular-express-seed/views/layout.jade:2 1| doctype 5 > 2| html(lang="en" ng-app="myApp") 3| head 4| meta(charset='utf8') 5| base(href='/') unexpected token "indent"
1| doctype 5
> 2| html(lang="en" ng-app="myApp")
3| head
4| meta(charset='utf8')
5| base(href='/')
unexpected token "indent"
at Object.Parser.parseExpr (/Users/Keva161/Documents/Web Dev/Webapps/Node/angular-express-seed/node_modules/jade/lib/parser.js:241:15)
at Object.Parser.parse (/Users/Keva161/Documents/Web Dev/Webapps/Node/angular-express-seed/node_modules/jade/lib/parser.js:134:25)
at Object.Parser.parse (/Users/Keva161/Documents/Web Dev/Webapps/Node/angular-express-seed/node_modules/jade/lib/parser.js:140:24)
at parse (/Users/Keva161/Documents/Web Dev/Webapps/Node/angular-express-seed/node_modules/jade/lib/jade.js:100:62)
at Object.exports.compile (/Users/Keva161/Documents/Web Dev/Webapps/Node/angular-express-seed/node_modules/jade/lib/jade.js:163:9)
at Object.exports.render (/Users/Keva161/Documents/Web Dev/Webapps/Node/angular-express-seed/node_modules/jade/lib/jade.js:215:17)
at View.exports.renderFile [as engine] (/Users/Keva161/Documents/Web Dev/Webapps/Node/angular-express-seed/node_modules/jade/lib/jade.js:243:13)
at View.render (/Users/Keva161/Documents/Web Dev/Webapps/Node/angular-express-seed/node_modules/express/lib/view.js:75:8)
at Function.app.render (/Users/Keva161/Documents/Web Dev/Webapps/Node/angular-express-seed/node_modules/express/lib/application.js:505:10)
at ServerResponse.res.render (/Users/Keva161/Documents/Web Dev/Webapps/Node/angular-express-seed/node_modules/express/lib/response.js:717:7)
4

3 回答 3

2

我认为玉将您的 html 解释为在文档类型中。而不是!

doctype 5
html(lang="en" ng-app="myApp")
 head
   base(href='website.domain/url')
   link(rel='stylesheet', href='css/app.css', type='text/css')
   title pageTitle
 meta(http-equiv="content-type", content="#{contentType}; charset=UTF-8")
 body

也不确定block body是为了什么?!block body当您使用另一个视图文件并将文本附加到布局文件时,将使用AFAIK 。

于 2013-02-10T13:25:01.997 回答
1

html(lang="en" ng-app="myApp")

您可能需要添加一个逗号,像这样

html(lang="en", ng-app="myApp")

于 2013-08-25T02:42:37.373 回答
0

你的代码应该是这样的

doctype html
html(lang="en" ng-app="myApp")
    head
        meta(charset='utf8')
        base(href='/')
        link(rel='stylesheet' href='/css/app.css')
        title= pageTitle
    body
        block body
  1. 你不应该在 doctype 中缩进 html 标签
  2. 你必须在 html 标签内缩进 body 和 head 标签
于 2016-01-30T14:45:34.940 回答