변수가 null 인 경우 표시 / 숨기기 방법


82

변수가 null인지 여부에 따라 div를 표시하거나 숨기고 싶습니다.

<div ng-show="myvar"></div>

참고 : 제 경우에는 변수가 객체입니다.

매우 간단한 질문이지만 제대로 작동하지 않는 것 같습니다.

감사.



아마도 myVar에 == null이
거친 버니

2
null이 아닌 값은 어떤 myvar것으로 가정합니까? ng-show어떤 게재됩니다 truthy에 너무 오래로, 값 myvar아니다 false, null, undefined, 0, 빈 문자열 또는 NaN그것을 작동합니다. 컨텍스트를 위해 더 많은 코드를 게시하십시오.
Philipp Reichart 2014 년

명확히하기 위해 위의 예제는 작동하지만 내 코드는 관련없는 이유로 작동하지 않습니다. mylar가 false이거나 null이거나 이전에 사용한 적이없는 경우 (예 : $ scope.myvar 또는 $ rootScope.myvar 호출되지 않음) div가 표시되지 않습니다. 값이 할당되면 값이 특별히 false 인 경우를 제외하고 div가 표시됩니다.
Paul Haggo 2014

답변:


201
<div ng-hide="myvar == null"></div>

또는

<div ng-show="myvar != null"></div>

16
<div ng-hide="myvar == null"></div>대신 을 사용하는 것이 좋습니다 <div ng-show="myvar != null"></div>. 더 읽기 쉽습니다.
maicher

12
@maicher 그건 정말 상황에 따라 달라집니다
페트르 펠러

ng-show는 식을 $scope.myvar != $scope.null또는 로 번역 $scope.myvar != null합니까? (여기에 질문 게시 stackoverflow.com/questions/31387397 )
jperelli

Angular는 javascript null을 사용합니다. 어쨌든 null은 항상 null이어야하므로 범위에 null을 추가하기 시작하고 싶지는 않습니다 (표현식에서 사용되는 경우 angular는 $ scope.null을 무시합니다).
거친 버니

20

명확히하기 위해 위의 예제는 작동하지만 예제의 코드는 관련없는 이유로 작동하지 않았습니다.

myvar가 false, null이거나 이전에 사용한 적이없는 경우 (예 : $ scope.myvar 또는 $ rootScope.myvar를 호출 한 적이 없음) div가 표시되지 않습니다. 값이 할당되면 값이 특별히 false 인 경우를 제외하고 div가 표시됩니다.

다음은 div가 표시되도록합니다.

$scope.myvar = "Hello World";

또는

$scope.myvar = true;

다음은 div를 숨 깁니다.

$scope.myvar = null;

또는

$scope.myvar = false;

2

이 경우 myvar는 부울 값이어야합니다. 이 변수가 true이면 div를 표시하고 false이면 div를 표시합니다.

이것을 확인하십시오 .


myvar부울 인 경우에만 작동한다는 말입니까?
Robert Harvey

myvar가 객체 인 솔루션을 찾고 싶습니다. 감사.
Paul Haggo 2014 년

1
진실 또는 거짓이어야합니다.
Rodrigo Oliveira

폴, 당신의 물건 반환은 무엇입니까?
Rodrigo Oliveira
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.