Skip to content

Instantly share code, notes, and snippets.

@mehulkar
Last active September 16, 2020 17:19
Show Gist options
  • Save mehulkar/2a1bdf1815182321d9edbbdb180115c1 to your computer and use it in GitHub Desktop.
Save mehulkar/2a1bdf1815182321d9edbbdb180115c1 to your computer and use it in GitHub Desktop.
template-only-components
{{log "Colocated this: " this}}
<h1>ColocatedTemplate Only Component</h1>
import Controller from '@ember/controller';
export default class ApplicationController extends Controller {
appName = 'Ember Twiddle';
}
<p>
This twiddle shows that Colocated Template Only components are _always_ Glimmer Components, regardless of whether the <code>template-only-glimmer-components</code> feature is turned on or off.
</p>
<p>Open JS console to see that the <code>this</code> context is <code>null</code> for the colocated component regardless of the value of the <code>template-only-glimmer-components</code> optional feature. You can toggle the feature in twiddle.json
</p>
<MyComponent />
<ClassicComponent />
{{log "classic this: " this}}
<h1>Classic Template Only Component</h1>
{
"version": "0.17.1",
"EmberENV": {
"FEATURES": {},
"_TEMPLATE_ONLY_GLIMMER_COMPONENTS": false,
"_APPLICATION_TEMPLATE_WRAPPER": true,
"_JQUERY_INTEGRATION": true
},
"options": {
"use_pods": false,
"enable-testing": false
},
"dependencies": {
"jquery": "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.js",
"ember": "3.18.1",
"ember-template-compiler": "3.18.1",
"ember-testing": "3.18.1"
},
"addons": {
"@glimmer/component": "1.0.0"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment