Angular: ternary operator in ngFor throw error Can't bind to 'ngFor' since it isn't a known property of 'div'

Manon Ingrassia

I have in my code a ngFor loop in a div that looks like that:

  <div formArrayName="i===0 ? 'viaOut' : 'viaIn' " fxLayout="row" fxLayoutGap="20px" *ngIf="viaOut">
        <div *ngFor="i===0 ? 'let via of newRequest.controls.roundway.controls[i].controls.viaOut.controls; let j=index' : 'let via of newRequest.controls.roundway.controls[i].controls.viaIn.controls; let j=index' ">

Before using the ternary operator, I only had a simple ngFor and a normal formArrayName, it worked perfectly, but when I changed to this it stopped working and I get in my browser console the error:

Uncaught Error: Template parse errors:
Can't bind to 'ngFor' since it isn't a known property of 'div'. ("me="i===0 ? 'viaOut' : 'viaIn' " fxLayout="row" fxLayoutGap="20px" *ngIf="viaOut">
            <div [ERROR ->]*ngFor="i===0 ? 'let via of newRequest.controls.roundway.controls[i].controls.viaOut.controls; let j="): ng:///AppModule/NouvelledemandeComponent.html@132:17
Property binding ngFor not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". 

Also, I already import BrowserModule (and it works well as everything worked before I used ternary operator)

Thank you

Iancovici

You can't assign strings or code to *ngFor loop, although it seems like a for-loop, it really just takes takes an NgIterable, anything iterable like an array, not code. So you can't use ternary operator.

For instance, if you feed it an array, it will work

let a of list

When you add even just parenthesis, it'll break

(let a of list)

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

Unit test Angular with Jasmine and Karma, Error:Can't bind to 'xxx' since it isn't a known property of 'xxxxxx'.

Angular error: "Can't bind to 'ngModel' since it isn't a known property of 'input'"

Can't bind to 'ngIf' since it isn't a known property of 'div'

Can't bind to 'target' since it isn't a known property of 'div'

Exception: Can't bind to 'ngFor' since it isn't a known native property

Angular 2 Can't bind to 'dragula' since it isn't a known property of 'div'

Angular2 unit testing error: Can't bind to 'routerLink' since it isn't a known property of 'a'

Can't bind to 'leafletOptions' since it isn't a known property of 'div'

Angular error : Can't bind to 'ngForFrom' since it isn't a known property of 'a'

Angular 6 production build "Can't bind to 'disabled' since it isn't a known property of 'div'"

Can't bind to 'leafletMarkerCluster' since it isn't a known property of 'div'

Angular Test error -- Can't bind to 'items' since it isn't a known property of 'app-dropdown'

Can't bind to 'formControl' since it isn't a known property of 'div' - Angular 2

Error: Can't bind to 'ngModel' since it isn't a known property of

Can't bind to 'startingCategory' since it isn't a known property of 'div'

error NG8002: Can't bind to 'formGroup' since it isn't a known property of 'form'. In Angular 9

ngClass error (Can't bind ngClass since it isn't a known property of div) in Angular 11.0.3

Can't bind to 'cdkDragFreeDragPosition' since it isn't a known property of 'div'

Can't bind to 'ngForOf' since it isn't a known property of 'li' in ngFor Angular

Angular 2 *ngFor error: Can't bind to 'menuitemtype' since it isn't a known property of 'div'

Angular Can't bind to 'dirUnless' since it isn't a known property

Angular 5 Error:Can't bind to 'ngForFor' since it isn't a known property of 'li'

Error: Can't bind to 'ngForOf' since it isn't a known property of 'div'

Angular error message: Can't bind to 'formGroup' since it isn't a known property of 'form'

Angular unit test error - Can't bind to 'formGroup' since it isn't a known property of 'form'

Angular 7 compilation error NG8002 can't bind object since it isn't a known property

Angular 11 - Can't bind to boundary since it isn't a known property of div

Angular: call of componenr error : can't bind to xxx since it isn't a known property of yyy

jasmine thorw ERROR: 'NG0303: Can't bind to 'options' since it isn't a known property of 'div'.'

TOP Ranking

  1. 1

    Failed to listen on localhost:8000 (reason: Cannot assign requested address)

  2. 2

    How to import an asset in swift using Bundle.main.path() in a react-native native module

  3. 3

    Loopback Error: connect ECONNREFUSED 127.0.0.1:3306 (MAMP)

  4. 4

    pump.io port in URL

  5. 5

    Spring Boot JPA PostgreSQL Web App - Internal Authentication Error

  6. 6

    BigQuery - concatenate ignoring NULL

  7. 7

    ngClass error (Can't bind ngClass since it isn't a known property of div) in Angular 11.0.3

  8. 8

    Do Idle Snowflake Connections Use Cloud Services Credits?

  9. 9

    maven-jaxb2-plugin cannot generate classes due to two declarations cause a collision in ObjectFactory class

  10. 10

    Compiler error CS0246 (type or namespace not found) on using Ninject in ASP.NET vNext

  11. 11

    Can't pre-populate phone number and message body in SMS link on iPhones when SMS app is not running in the background

  12. 12

    Generate random UUIDv4 with Elm

  13. 13

    Jquery different data trapped from direct mousedown event and simulation via $(this).trigger('mousedown');

  14. 14

    Is it possible to Redo commits removed by GitHub Desktop's Undo on a Mac?

  15. 15

    flutter: dropdown item programmatically unselect problem

  16. 16

    Change dd-mm-yyyy date format of dataframe date column to yyyy-mm-dd

  17. 17

    EXCEL: Find sum of values in one column with criteria from other column

  18. 18

    Pandas - check if dataframe has negative value in any column

  19. 19

    How to use merge windows unallocated space into Ubuntu using GParted?

  20. 20

    Make a B+ Tree concurrent thread safe

  21. 21

    ggplotly no applicable method for 'plotly_build' applied to an object of class "NULL" if statements

HotTag

Archive