Frage

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?

War es hilfreich?

Lösung

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 -->

Andere Tipps

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 -->
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange
scroll top