angularjs 如何在Angular JS中进行嵌套插值

bn31dyow  于 2023-08-02  发布在  Angular
关注(0)|答案(5)|浏览(135)

我有一个ng-repeat,它需要嵌套插值来计算。下面是一个示例:

<div ng-repeat="i in ['1', '2', '3']">
    should evaluate to {{ i }}: {{ (i>0) && ( {{ i }} ) || false }}
</div>

字符串
这会导致$parse错误。我认为的问题是Angular不能执行嵌套求值操作,也不能支持嵌套插值。
有办法解决这个问题吗?

mjqavswn

mjqavswn1#

我在尝试创建动态表组件时也遇到了类似的问题。通过下面的代码,我可以在前端显示数据库中的任何表,而无需定义任何内容,这要归功于嵌套插值。您只需要使用方括号进行嵌套插值。例如:{{rowcol.column_name}}

<table id="dynamicTable" class="table table-hover" cellspacing="0">
    <thead>
        <tr>
            <th *ngFor="let col of Columns">{{col.column_name}}</th>
        </tr>
    </thead>
    <tbody>
        <tr *ngFor="let row of Table">
            <td *ngFor="let col of Columns">{{row[[col.column_name]]}}</td>
        </tr>
    </tbody>
</table>

字符串
希望这对你有帮助!(使用Angular 7)

koaltpgm

koaltpgm2#

它给你解析错误,因为你不能嵌套{{}}..
{{ code }}基本上告诉angular,{{ }}(在我的例子中是 code)里面的东西都是JavaScript,而js不理解{{ }}语法。这就是为什么第二个{{ i }}会导致问题。
你可能还想看看ngRepeat文档--有一些特殊的属性,比如$index,你可以使用。https://docs.angularjs.org/api/ng/directive/ngRepeat

relj7zay

relj7zay3#

我不明白这个{{ i }}: {{ (i>0) && ( {{ i }} ) || false }}语句是关于什么的,也不可能在angular js中嵌套{{}}
你是不是想

**Working Demo**第一个字符

<div ng-controller="MyCtrl">
   <div ng-repeat="i in ['0','1', '2', '3']">
       {{ i>0 ? true: false }}
    </div> 
</div>

字符串

ifmq2ha2

ifmq2ha24#

将打印{{}}中的结果-无需嵌套:

<div ng-repeat="i in ['0','1', '2', '3']"> {{ i > 0 ?  i : false }} </div>

字符串

x8diyxa7

x8diyxa75#

正如柯林的代码,占位符="{{(param.value == null|| param.value ='NULL'||param.value ='')?('Select'+param.parameterDisplayName):(param.value)}}",可以使用内部条件嵌套。这个管用!

相关问题