Upgrade from Magento 2.1.6 -> 2.2.3 and PHP 5.6 to 7.0.20
After the upgrade seems like most things are working find except the /checkout/ page which is having trouble loading the shipping field forms:
Expected:
Actual:
Not sure what exactly is causing this, getting this JS error which seems important:
Uncaught ReferenceError: Unable to process binding "if: function (){return isFormInline }"
Message: Unable to process binding "template: function (){return shippingFormTemplate }"
Message: shippingFormTemplate is not defined
at template (eval at createBindingsStringEvaluator (knockout.js:2624), <anonymous>:3:61)
at init (knockout.js:5023)
at knockout.js:2989
at Object.ignore (knockout.js:1249)
at knockout.js:2988
at Object.arrayForEach (knockout.js:151)
at applyBindingsToNodeInternal (knockout.js:2974)
at applyBindingsToNodeAndDescendantsInternal (knockout.js:2854)
at applyBindingsToDescendantsInternal (knockout.js:2836)
at Object.ko.applyBindingsToDescendants (knockout.js:3052)
The standard Magento module for checkout is used on this page and it's not overwritten by the theme or anything else as far as I know and the JSON data coming from the server seems to be OK.
Best Answer
I had a similar issue which was caused by theme overwriting Magento_Checkout/web/js/view/shipping.js file. This file seems to have changed in 2.2.3.