Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.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内容条件化?_Javascript_Html_Angularjs - Fatal编程技术网

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"