【发布时间】:2014-02-28 05:05:54
【问题描述】:
我正在尝试让一个“开箱即用”的应用程序与 node.js 0.8.0 一起工作(它是在 0.6.x 中设计的,但我无法让依赖项与它一起工作) .
我已经用我发现的视图更新了大部分错误,但是在通过表单字段传递变量时遇到了麻烦。
登录页面:
extends ../layout
block scripts
include ../includes/js/jquery
include ../includes/js/center
include ../includes/js/focus
include ../includes/js_form
block content
include ../includes/logo
.main
h1 Welcome to <br> #{company_name} #{company_location}!
br
h2 Please sign in / sign out.
br
form(action='check_signout', method='post', id='name_form', autocomplete='off')
p What is your first name?
input(type='text', id='first_name', name='first_name', size='40', class='required', minlength='1')
br
br
p And your last name?
input(type='text', id='last_name', name='last_name', size='40', class='required', minlength='2')
br
include ../includes/next
include ../includes/page_number
check_signout(表单提交页面):
extends ../layout
block scripts
include ../includes/js/jquery
include ../includes/js/center
include ../includes/timeout
block content
include ../includes/logo
.main
h2
p Hi, #{first_name} #{last_name}!
p You signed in at #{signin_time}.
p Would you like to sign out?
br
br
br
p
input.button#signout(type="button", value="Yes, I would like to sign out.", onclick="parent.location='confirm_signout'", readonly)
br
br
p
input.button(type="button", value="No, I would like to sign in.", onclick="parent.location='reason'", readonly)
错误:
Express
500 TypeError: Cannot set property 'first_name' of undefined
at exports.check_signout (/home/ubuntu/lobby/routes/index.js:24:31)
at callbacks (/home/ubuntu/lobby/node_modules/express/lib/router/index.js:165:11)
at param (/home/ubuntu/lobby/node_modules/express/lib/router/index.js:139:11)
at pass (/home/ubuntu/lobby/node_modules/express/lib/router/index.js:146:5)
at Router._dispatch (/home/ubuntu/lobby/node_modules/express/lib/router/index.js:173:5)
at Object.router (/home/ubuntu/lobby/node_modules/express/lib/router/index.js:33:10)
at next (/home/ubuntu/lobby/node_modules/express/node_modules/connect/lib/proto.js:190:15)
at Object.methodOverride [as handle] (/home/ubuntu/lobby/node_modules/express/node_modules/connect/lib/middleware/methodOverride.js:37:5)
at next (/home/ubuntu/lobby/node_modules/express/node_modules/connect/lib/proto.js:190:15)
at store.get.next (/home/ubuntu/lobby/node_modules/express/node_modules/connect/lib/middleware/session.js:302:9)
【问题讨论】:
-
您直接从您的登录页面发布到另一个 HTML 页面?您必须将 first_name 从服务器传递给 check_signout。
-
复制快递代码...搜索app.engine('jade'...
-
我对nodejs一无所知(这比我需要的要困难得多),让我在app.js代码中找到它并更新原始问题。
-
jsfiddle.net/AtXQn 有 app.js,它只是将视图发布到 html 页面。
-
github.com/docusign/Lobby-App 这也是它的 git,如果它有助于描述我的问题。
标签: javascript node.js express pug