ng-show 工作,但与预期相反
ng-show working, but doing opposite to what is expected
该功能涉及在单击按钮时显示下拉菜单,尽管有些项目我不想显示,具体取决于条件。
function dropdownMenu(params) {
var ownFunction = params.data.functieMijnLicentieHouder;
if (params.data.systeem === 'VVT' && (ownFunction || (!ownFunction && fwgAuthService.userHasClaim('FWGVVT FWG functieonderzoek'))) ){
return '<div class="io-dropdown"><img src="img/arrow_blue_down.png" ng-click="vm.showMenu(data)"/>' +
'<ul ng-show="data.showMenu" ng-mouseleave="data.showMenu = false">' +
'<li>Inzien functiebeschrijving</li>' +
'<li>Inzien functiemotivatie</li>' +
'<li ng-show="!!ownFunction"> Muteren functiemotivatie </li>' + // if ownFunction is true.show
'<li>it works</li>' +
'</div>';
} else if (params.data.systeem === 'FWG3' && (ownFunction || (!ownFunction && fwgAuthService.userHasClaim('FWGVVT FWG functieonderzoek'))) ){
return '<div class="io-dropdown"><img src="img/arrow_blue_down.png" ng-click="vm.showMenu(data)"/>' +
'<ul ng-show="data.showMenu" ng-mouseleave="data.showMenu = false">' +
'<li>Inzien functiemotivatie</li>' +
'<li>Inzien FWG 3 Indeling</li>'+
'</ul>' +
'</div>';
}
}
ownFunction
的值最初是 true,我在 if 语句和 ng-show 工作之前检查了 console.log,但它显示相反的结果,即 True 时为 False,False 时为 True。我无法理解这种行为
快速浏览一下,您确定 ng-show
中需要两个 !!
,这可能是这里的原因吗?
'<li ng-show="!!ownFunction"> Muteren functiemotivatie </li>'
ownFunction 应该在 $scope 对象中,ng-show 才能工作。
而不是
var ownFunction = params.data.functieMijnLicentieHouder;
尝试
$scope.ownFunction = params.data.functieMijnLicentieHouder;
该功能涉及在单击按钮时显示下拉菜单,尽管有些项目我不想显示,具体取决于条件。
function dropdownMenu(params) {
var ownFunction = params.data.functieMijnLicentieHouder;
if (params.data.systeem === 'VVT' && (ownFunction || (!ownFunction && fwgAuthService.userHasClaim('FWGVVT FWG functieonderzoek'))) ){
return '<div class="io-dropdown"><img src="img/arrow_blue_down.png" ng-click="vm.showMenu(data)"/>' +
'<ul ng-show="data.showMenu" ng-mouseleave="data.showMenu = false">' +
'<li>Inzien functiebeschrijving</li>' +
'<li>Inzien functiemotivatie</li>' +
'<li ng-show="!!ownFunction"> Muteren functiemotivatie </li>' + // if ownFunction is true.show
'<li>it works</li>' +
'</div>';
} else if (params.data.systeem === 'FWG3' && (ownFunction || (!ownFunction && fwgAuthService.userHasClaim('FWGVVT FWG functieonderzoek'))) ){
return '<div class="io-dropdown"><img src="img/arrow_blue_down.png" ng-click="vm.showMenu(data)"/>' +
'<ul ng-show="data.showMenu" ng-mouseleave="data.showMenu = false">' +
'<li>Inzien functiemotivatie</li>' +
'<li>Inzien FWG 3 Indeling</li>'+
'</ul>' +
'</div>';
}
}
ownFunction
的值最初是 true,我在 if 语句和 ng-show 工作之前检查了 console.log,但它显示相反的结果,即 True 时为 False,False 时为 True。我无法理解这种行为
快速浏览一下,您确定 ng-show
中需要两个 !!
,这可能是这里的原因吗?
'<li ng-show="!!ownFunction"> Muteren functiemotivatie </li>'
ownFunction 应该在 $scope 对象中,ng-show 才能工作。
而不是
var ownFunction = params.data.functieMijnLicentieHouder;
尝试
$scope.ownFunction = params.data.functieMijnLicentieHouder;