Skip to content

Instantly share code, notes, and snippets.

@mohamedali-s-4725
Last active July 13, 2021 07:33
Show Gist options
  • Save mohamedali-s-4725/5a41f54f8fc9472c59cbc8567caa9872 to your computer and use it in GitHub Desktop.
Save mohamedali-s-4725/5a41f54f8fc9472c59cbc8567caa9872 to your computer and use it in GitHub Desktop.
Nested route action-up
import Component from '@ember/component';
export default Component.extend({
});
import Controller from '@ember/controller';
export default Controller.extend({
});
import Controller from '@ember/controller';
export default Controller.extend({
actions: {
sayHai(){
alert('Haiii...');
this.send('sayHello');
}
}
});
import Controller from '@ember/controller';
export default Controller.extend({
});
import Controller from '@ember/controller';
export default Controller.extend({
});
import Controller from '@ember/controller';
export default Controller.extend({
});
import EmberRouter from '@ember/routing/router';
import config from './config/environment';
const Router = EmberRouter.extend({
location: 'none',
rootURL: config.rootURL
});
Router.map(function() {
this.route('route1', { path: '/1' }, function() {
this.route('route2', { path: '/2' }, function() {
this.route('route3', { path: '/3' }, function() {
this.route('route4', { path: '/4' }, function() {});
});
});
});
});
export default Router;
import Route from '@ember/routing/route';
export default Route.extend({
actions: {
sayHello(){
alert('Hello!! --> From Application Route');
}
}
});
import Route from '@ember/routing/route';
export default Route.extend({
});
import Route from '@ember/routing/route';
export default Route.extend({
});
import Route from '@ember/routing/route';
export default Route.extend({
});
import Route from '@ember/routing/route';
export default Route.extend({
});
<h1>Nested app with Action-up</h1>
<hr>
<br>
Application Route : {{#link-to 'route1.route2.route3.route4'}} Go to Route 1 {{/link-to}}
<br>
<br>
{{outlet}}
{{log this}}
<br><br><hr><br>
<center>
<b {{action sayHello}}>Say Hello..!!</b>
</center>
<br>
<hr>
{{yield}}
<MyComponent @sayHello={{action 'sayHai'}}/>
<div {{action 'sayHello'}}>:::: Click me..</div>
{{outlet}}
This is Route 3 : {{#link-to 'route1.route2.route3.route4'}} Go to Route 4 {{/link-to}}
<br><br>
{{outlet}}
This is Route 2 : {{#link-to 'route1.route2.route3'}} Go to Route 3 {{/link-to}}
<br><br>
{{outlet}}
This is Route 1 : {{#link-to 'route1.route2'}} Go to Route 2 {{/link-to}}
<br><br>
{{outlet}}
{
"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