javascript - Typescript if and if not with boolean and string -


i editing app using typescript react , meteor. got following state:

  {user && ( ... )} 

this shows data if visitor logged in user. although want show data only if tournament not cancelled. tried add

  {user && !tournament.state === 'cancelled' && ( ... )} 

which not work. receive following linter message:

operator '===' cannot applied types 'boolean' , '"cancelled"'.

how can solve puzzle?

typescript complains because trying compare boolean value: !tournament.state string: 'cancelled'.

the ! symbol going turn truthy/falsy result boolean. happens because assuming tournament.state equal 'cancelled':

!tournament.state = !'cancelled' = false 

the triple equals operator checks both value , type. code not disliked typescript, incorrect, every value of tournament.state going fail check, because end boolean against string. need is:

{user && tournament.state !== 'cancelled' && ( ... )} 

Comments

Popular posts from this blog

javascript - Confirm a form & display message if form is valid with JQuery -

Retrieving ETA (estimated time of arrival) with Google Distance Matrix API and public transit as transport mode -

ionic framework - Meteor - Error: Failed to execute 'insertBefore' on 'Node' -