Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.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 AngularJS-ng显示未按预期工作_Javascript_Angularjs_Passport.js - Fatal编程技术网

Javascript AngularJS-ng显示未按预期工作

Javascript AngularJS-ng显示未按预期工作,javascript,angularjs,passport.js,Javascript,Angularjs,Passport.js,我试图隐藏到标记,然后在登录时使用isLoggedIn()函数显示它们,但是无论发生什么情况,标记都会显示出来 HTML(pool details.HTML) 我无法理解为什么标记仍然显示,尽管我没有登录。我将Passport插件用于Angular fullstack应用程序 ng-show="'isLoggedIn()'" 它计算'isLoggedIn()'字符串,它将始终为真,您应该重构为ng show=“isLoggedIn()”好的,我设法解决了我的问题。这是我手上的一个简单的新手错误

我试图隐藏到
标记,然后在登录时使用
isLoggedIn()
函数显示它们,但是无论发生什么情况,
标记都会显示出来

HTML(pool details.HTML)

我无法理解为什么
标记仍然显示,尽管我没有登录。我将Passport插件用于Angular fullstack应用程序

ng-show="'isLoggedIn()'"

它计算'isLoggedIn()'字符串,它将始终为真,您应该重构为
ng show=“isLoggedIn()”

好的,我设法解决了我的问题。这是我手上的一个简单的新手错误,我道歉

解决方案

我缺少
$scope.isLoggedIn()

我只是将此添加到控制器:

$scope.isLoggedIn = function(){
    return Auth.isLoggedIn();
}

只需返回
Auth.isLoggedIn()
就可以将这个值添加到我的作用域中,从而可以在HTML中检查它。

isLoggedIn()函数定义在哪里?我想知道与上面的注释相同的地方-此外,ng show应该写为ng show=“isLoggedIn()”,没有单引号。
isLoggedIn()
是Passport提供的函数。在控制器中,我正在使用Passport,通过添加
Auth
@Fissio删除单引号,只删除
标记,并且在
isLoggedIn()
等于时不显示true@Detilium添加
{{isLoggedIn()}}
在HTML中的某个地方,这样您就可以看到函数是否在您期望的时候返回true。
ng-show="'isLoggedIn()'"
$scope.isLoggedIn = function(){
    return Auth.isLoggedIn();
}