Javascript 如何呈现angularjs内容条件化?
我想根据控制器变量的Javascript 如何呈现angularjs内容条件化?,javascript,html,angularjs,Javascript,Html,Angularjs,我想根据控制器变量的boolean状态在前端呈现一些ui内容 控制器: $scope.test = [ myvar = true //some other variables and data ]; html: 第二条语句不知何故没有呈现。为什么?[]是没有字符串键的数组的文本。 =分配给变量,它不用于关联键和值 您需要一个对象文字,如下所示: $scope.test = { myvar: true }; $scope.test = { myvar: true
boolean
状态在前端呈现一些ui内容
控制器:
$scope.test = [
myvar = true
//some other variables and data
];
html:
第二条语句不知何故没有呈现。为什么?
[]
是没有字符串键的数组的文本。=
分配给变量,它不用于关联键和值
您需要一个对象文字,如下所示:
$scope.test = {
myvar: true
};
$scope.test = {
myvar: true
};
您还弄乱了指令中的语法:
<p ng-if="test.myvar">show this content</p>
显示此内容
{{}
在基本上所有指令中都不是必需的;指令属性的内容在指令内部解析,不需要绑定{{}
几乎只在“回显”数据时才需要。方形barckets它是一个数组。例:[“查尔斯”、“杰伊”、“乔恩”]
花括号它是一个对象。例如:{姓名:'Charles',电话:'91332323'}
在对象中,可以使用“.”符号访问变量
您正在寻找的是一个对象,而不是数组。无需为ng if加大括号。只需使用ng if=“test.myvar”并使用
在JavaScript中,对象是在大括号的帮助下创建的,如下所示:
$scope.test = {
myvar: true
};
$scope.test = {
myvar: true
};
并且,当使用ng
指令时,angular在不使用{{}}
的情况下解析变量,这就是为什么您应该这样做:
ng-if="test.myvar"
$scope.test={myvar:true//一些其他变量和数据}代码>谢谢。但是仍然没有显示ngif=“{{test.myvar}}”
,语法是ngif=“test.myvar”
。
ng-if="test.myvar"