Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当用户连接Passport节点时,在导航栏中显示选项_Javascript_Node.js_Passport.js_Ejs_Navbar - Fatal编程技术网

Javascript 当用户连接Passport节点时,在导航栏中显示选项

Javascript 当用户连接Passport节点时,在导航栏中显示选项,javascript,node.js,passport.js,ejs,navbar,Javascript,Node.js,Passport.js,Ejs,Navbar,我希望我的导航栏显示“Profile of:{USER}”,如果某人已连接,则显示一组启动/登录选项卡 要点是:我使用的是EJS,在/views文件夹中的/partial文件夹中有单独的“head.EJS”和“header.EJS”片段 在index.ejs上,我可以显示我提前通过的内容: res.render('index.ejs', {username: req.user.username}) 但是我还没有成功地将这个“用户名”从我的index.ejs传递到我的header.ejs,我的导

我希望我的导航栏显示“Profile of:{USER}”,如果某人已连接,则显示一组启动/登录选项卡

要点是:我使用的是EJS,在/views文件夹中的/partial文件夹中有单独的“head.EJS”和“header.EJS”片段

在index.ejs上,我可以显示我提前通过的内容:

res.render('index.ejs', {username: req.user.username})
但是我还没有成功地将这个“用户名”从我的index.ejs传递到我的header.ejs,我的导航栏就在这里

我的另一个问题是在我的导航栏上登录(我使用一个isLoggedin),我有一个:函数isLoggedin没有定义

欢迎提供任何帮助或提示!:)

编辑: 到目前为止,我得到了我的标题。ejs:


  • 个人资料:
尝试输入:


“配置文件:{{username}}”
这就是我所做的:

在登录页面中,我制作了一个自定义导航栏,因为在未连接的情况下,一切都是无用的。因此,我在每个我想显示用户名的页面上都添加了一个IsLoggedIn函数,以便未经验证的用户自动重定向到登录页面


这不是最优雅的解决方案,但我不喜欢创建一个要传递的空对象。尽管如此,它仍在工作。

您可以将用户名信息发送到index.ejs。ejs很智能,它会自动从res.render语句中获取值。是的,现在它正在工作……但在我注销时它会崩溃。我一直在考虑做两个“headers.ejs“,一个用于连接用户,另一个用于通用,但我不确定这是否是一个好的解决方案/做法。”。。我相信有一种方法可以使用一些脚本在导航栏中显示名称当用户连接了一个或多个连接时,用户的名称他自己连接的链接你可以使用if条件的三元运算符和特定的div。例如,``Logedin Login/Signup``希望有帮助。@xetryDcoder我试过你的解决方案,它给了我用户ID未定义的错误。。你怎么称呼userID?是你从应用程序传递的东西吗?比如:这只是一个例子。登录/注册。如果这无助于将您的项目推送到git并共享链接,您可以尝试使用此链接。。我可能会帮助你您好,使用双参数对我不起作用,我使用了“”,但现在我已经在我网站的每个视图中实现了它,如果我注销,我会收到以下错误消息:TypeError:无法读取未定义的属性“username”。。你知道如何解决这个问题吗?希望你已经安装了body parser,检查你的路径是否在主文件中的body parser代码之下,或者如果不是,可能是因为用户名是异步的。也许这会有帮助:不,错误来自于这样一个事实:注销时,没有用户名可显示,由于没有用户(在呈现ejs页面时,应用程序无法发送req.user.username),您可以显示您的功能吗?