Pregunta

I am customizing the shopping cart page, Here I worked knockout js and html code file. I successfully wrote If statement by below code.

<!-- ko if: isFreeShipping() -->
   //My Code goes here
<!-- /ko -->

For else statement not working, for these, I wrote below code.

    <!-- ko if: isFreeShipping() -->
       //My Code goes here
    <!-- ko ifnot: isFreeShipping() -->
       //My Code goes here
    <!-- /ko -->

Error: Uncaught Error: You cannot apply bindings multiple times to the same element.

Can you please suggest me how to write If Else statement in html file?

¿Fue útil?

Solución

You should write a below code for else condition

<!-- ko if: isFreeShipping() -->
    //My Code goes here
<!-- /ko -->
<!-- ko ifnot: isFreeShipping() -->
    //My Code goes here
<!-- /ko -->

Otros consejos

Just to extend a bit on Suresh Chikani's answer to include more combinations under this question:

To do a if-elseif-else construction you would have in PHP:

if (A && B) {
    //...code
} elseif (A) { // And thus 'not B'
    //...code
} else { // Thus is 'not A' and 'not B'
    //...code
}

In Knockout you would do:

<!-- ko if: A && B -->
    //...code
<!-- /ko -->
<!-- ko if: A && !B -->
    //...code
<!-- /ko -->
<!-- ko if: !A && !B -->
    //...code
<!-- /ko -->
Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange
scroll top