首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >node.js :使用vash呈现错误

node.js :使用vash呈现错误
EN

Stack Overflow用户
提问于 2014-05-01 11:57:38
回答 1查看 1.5K关注 0票数 4

我在vash的node.js中得到了一个呈现错误。我真的很想知道问题出在哪里。下面是错误和导致错误的代码。

代码语言:javascript
运行
复制
TypeError: Problem while rendering template at line 4, character 2.
 Original message: object is not a function. Context: 2 |
 @html.block('body', function(model){ 3 | <p>@model.title </p> > 4 |
 }); 5 | }); 6 | 7 | at helpers.extend.model
 (C:\Users\user009\Dropbox\cpp\node_modules\vash\build\vash.js:2213:4)
 at Object.vash.loadFile
 (C:\Users\user009\Dropbox\cpp\node_modules\vash\build\vash.js:2072:10)
 at helpers.extend
 (C:\Users\user009\Dropbox\cpp\node_modules\vash\build\vash.js:2190:8)
 at eval (eval at <anonymous>
 (C:\Users\user009\Dropbox\cpp\node_modules\vash\build\vash.js:1820:24),
 <anonymous>:7:21) at vash.link.linked
 (C:\Users\user009\Dropbox\cpp\node_modules\vash\build\vash.js:1860:12)
 at vash.renderFile
 (C:\Users\user009\Dropbox\cpp\node_modules\vash\build\vash.js:2082:21)
 at Object.vash.loadFile
 (C:\Users\user009\Dropbox\cpp\node_modules\vash\build\vash.js:2070:10)
 at View.vash.renderFile [as engine]
 (C:\Users\user009\Dropbox\cpp\node_modules\vash\build\vash.js:2078:8)
 at View.render
 (C:\Users\user009\Dropbox\cpp\node_modules\express\lib\view.js:76:8)
 at Function.app.render
 (C:\Users\user009\Dropbox\cpp\node_modules\express\lib\application.js:502:10)

路由器:

代码语言:javascript
运行
复制
app.get("/", function (request, response) {
    response.render('index', {title: 'letsdoit'});
});

layout.vash

代码语言:javascript
运行
复制
<!DOCTYPE html>
<html>
<head><link href="/css/site.css" rel="stylesheet" />
<title>@model.title</title></head>
<body><div> @html.block('body') </div></body></html>

index.vash

代码语言:javascript
运行
复制
@html.extend('layout', function(model){
    @html.block('body', function(model){
        <p>@model.title </p>
    });
});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-01 20:42:14

在index.vash文件中,确保layout.vash文件的路径是正确的。

例如,如果视图文件夹结构是view/home/layout.vash和view/home/index.vash,那么:

代码语言:javascript
运行
复制
@html.extend('layout', function(model){

应:

代码语言:javascript
运行
复制
@html.extend('home/layout', function(model){

希望能帮上忙。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23407173

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档