View components.my-component-two\.js
import Component from '@glimmer/component'; | |
export default class extends Component { | |
get items() { | |
return this.args.foo.length; | |
} | |
} |
View example.ts
import Component from "@glimmer/component"; | |
import { helper } from "@ember/component/helper"; | |
import { setComponentTemplate } from "@ember/component"; | |
import { hbs as tpl } from "ember-cli-htmlbars"; | |
function asHelper(a, b, c) { | |
return { | |
value: helper(function (positional) { | |
return c.value.call(a, ...positional); | |
}) |
View controllers.application\.js
import Controller from '@ember/controller'; | |
import { action } from '@ember/object'; | |
import { tracked } from '@glimmer/tracking'; | |
import { schedule } from '@ember/runloop'; | |
export default class ApplicationController extends Controller { | |
queryParams = ['inputValue']; | |
@tracked _inputValue = ''; | |
View controllers.application\.js
import Controller from '@ember/controller'; | |
import { tracked } from '@glimmer/tracking'; | |
import { action } from '@ember/object'; | |
export default class ApplicationController extends Controller { | |
appName = 'Input with handler example'; | |
@tracked text; | |
handleInput(event) { | |
event.preventDefault(); |
View controllers.application\.js
import Controller from '@ember/controller'; | |
import { tracked } from '@glimmer/tracking'; | |
import { action } from '@ember/object'; | |
export default class ApplicationController extends Controller { | |
appName = 'Input with handler example'; | |
@tracked text; | |
handleInput(event) { | |
event.preventDefault(); |
View controllers.application\.js
import Controller from '@ember/controller'; | |
import { action } from '@ember/object'; | |
export default class ApplicationController extends Controller { | |
@action sayHello() { | |
alert('Hello'); | |
} | |
} |
View controllers.application\.js
import Controller from '@ember/controller'; | |
export default class ApplicationController extends Controller { | |
appName = 'Ember Twiddle'; | |
} |
View controllers.application\.js
import Controller from '@ember/controller'; | |
import { inject as service } from '@ember/service'; | |
import { action } from '@ember/object'; | |
import { tracked } from '@glimmer/tracking'; | |
export default class ApplicationController extends Controller { | |
@service('store') store; | |
constructor() { | |
super(...arguments); | |
const initial = this.store.createRecord('immutablel', { props: { name: 'Jake' }}); |
View index.js
const fs = require('fs'); | |
const items = JSON.parse(fs.readFileSync('state_of_js_2016_2020.json', 'utf8')); | |
const last = items.filter((item) => [2020].includes(item.year)); | |
// 2_5, 5_10, 10_20 | |
const exp = last.filter((item) => ['1_2', '2_5', '5_10', '10_20'].map(e=>`range_${e}`).includes(item.user_info.years_of_experience)); | |
// 10_30, 30_50, 50_100, 100_200, | |
const payd = exp.filter((item) => ['10_30','30_50', '50_100', '100_200'].map(e=>`range_${e}`).includes(item.user_info.yearly_salary)); | |
const shape = {}; | |
const fans = ['ember', 'react', 'angular', 'vuejs', 'other']; |
NewerOlder