I have a dynamic component similar to:
{{component fooProperty owner=this}}
fooProperty is data driven and sometimes comes off incorrectly, at least now in dev, but I'm afraid it may come off incorrectly in prod too (due to app versioning, persisted storage etc). Basically, I don't trust this to be always correct (ie. resolvable to a component). When the value is off, the entire app crashes though:
Uncaught Error: Assertion Failed: HTMLBars error: Could not find component named "some-inexisting-component" (no component or template with that name was found)
EmberError @ ember.debug.js:19700
assert @ ember.debug.js:6719
assert @ ember.debug.js:19502
componentHook @ ember.debug.js:10894
render @ ember.debug.js:12782
render @ ember.debug.js:12732
handleKeyword @ ember.debug.js:46584
keyword @ ember.debug.js:46709
exports.default @ ember.debug.js:12483
handleKeyword @ ember.debug.js:46545
handleRedirect @ ember.debug.js:46531
...
I would prefer to catch such exception and prevent the entire app from crashing. I can think of a workaround eg. vetting the fooProperty return against App.__container__.lookup and returning a generic 'missing' component. But I would still prefer if there is a way to capture and handle exception as raised during rendering, if possible.