We are pleased to announce that both Ember.js 1.4.0 and the first beta in the 1.5 serieshave been released. This comes as the fourth cycle of our six-week releaseprocess that began after 1.0 was released.
New features in 1.4
Property Brace Expansion
- Obtained ember and turned in for rep and reward. Comment by 494857 Despite the warning at the top of the page, as of today, this quest is still available and can be completed by clicking on the brazier next to his throne.
- Ember SpiritMelee, Carry, Disabler, Escape, Initiator, Nuker. 59th Popularity 46.53% Win Rate.
Find constantly updated Ember Spirit guides from the top performances of the week. Each guide includes item builds, ability builds, timings and more. Get Plus Get Featured Hero Guides are based on TrueSight data from matches with a verified player or Plus subscriber.
In prior versions of Ember if you wanted to observe both foo
and bar
on baz
you would need to setup both baz.foo
and baz.bar
as dependent keys.
With the new property brace expansion, you could setup the computed properties dependenciesinstead like:
Ember 1 8 52nd
This allows much less duplication/redundancy when your dependent keys are mostly similar. Focus list 1 0 11 months.
See the original PR #3538 for more details.
Ember.run.bind
Ember.run.bind
provides a useful utility when integrating with non-Ember librariesthat provide asynchronous callbacks.
Ember utilizes a run-loop to batch and coalesce changes. This works bymarking the start and end of Ember-related JavaScript execution. Amadeus pro 2 7 1 (2350) download free.
When using events such as a View's click handler, Ember wraps the eventhandler in a run-loop, but when integrating with non-Ember libraries thiscan be tedious.
For example, the following is rather verbose but is the correct way to combinethird-party events and Ember code.
Ember 1 8 529 Plan
To reduce the boilerplate, the following can be used to construct arun-loop-wrapped callback handler.
For more details please reference the recently added run-loop guide(much thanks to Brendan Briggs).
With Controller
The {{with}}
helper can now accept a controller
option. Adding controller='something'
instructs the {{with}}
helper to create and use an instance of the specified controllerwith the new context as its content.
This is very similar to using the itemController
option with the {{each}}
helper.
Duplicateviewer 3 3 – easy to use duplicate file finder. In the above example, the template provided to the {{with}}
block is now wrapped in theuserBlogPost
controller, which provides a very elegant way to decorate the context with customfunctions/properties.
Ember 1 8 52 Resz
Lazily Bound Attributes
Previously, every attribute that was bound added some degree of cost (mostly associated with maintainingthe bindings/observers themselves). This lead us to limit the list of attributes that were automaticallybound for Ember.TextField
, Ember.TextArea
, and friends. This is a common source of frustration asmore and more people want to bind to HTML5 attributes, but find that to do so they must reopen theEmber.TextField
class and add the attributes they need.
This might look like:
Ember 1 8 52 Cm
Then from the template:
This certainly is not ideal, and causes many issues for people that expect it to 'just work'.
Thankfully, this has gotten MUCH better with the 1.4 release. In 1.4 any attribute bindings that do notexist at the time the view is first rendered will not have observers setup (therefore removing the originalperformance concern), but if/when the attribute is set on the view later (after the first render) an observeris setup at that time.
This means that we are only creating observers for actual properties that are present, but we can list everyvalid HTML attribute in the attributeBindings
property so that you can use them without having to reopeninternal classes.
As of Ember 1.4 you should be able to use any HTML5 attribute with {{input type='text'}}
, {{textarea}}
, and{{checkbox}}
.
Other Improvements
As usual, there are a ton of bug fixes and small improvements in thisrelease. You can see a list of all the changes in the CHANGELOG:
Please enable JavaScript to view the comments powered by Disqus.Check BulbaNewsNOW for up-to-date Pokémon news and discuss it on the forums or in the Bulbagarden Discord server.
By leveling up
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
By TM/HM
| |||||
TM | Move | Type | Power | Accuracy | PP |
---|---|---|---|---|---|
TM06 | Toxic | Poison | — | 85% | 10 |
TM08 | Body Slam | Normal | 85 | 100% | 15 |
TM09 | Take Down | Normal | 90 | 85% | 20 |
TM10 | Double-Edge | Normal | 100 | 100% | 15 |
TM15 | Hyper Beam | Normal | 150 | 90% | 5 |
TM20 | Rage | Normal | 20 | 100% | 20 |
TM31 | Mimic | Normal | — | 100% | 10 |
TM32 | Double Team | Normal | — | —% | 15 |
TM33 | Reflect | Psychic | — | —% | 20 |
TM34 | Bide | Normal | — | —% | 10 |
TM38 | Fire Blast | Fire | 120 | 85% | 5 |
TM39 | Swift | Normal | 60 | —% | 20 |
TM40 | Skull Bash | Normal | 100 | 100% | 15 |
TM44 | Rest | Psychic | — | —% | 10 |
TM50 | Substitute | Normal | — | —% | 10 |
|
By a prior evolution
| |||||
Stage | Move | Type | Power | Accuracy | PP |
---|---|---|---|---|---|
Normal | — | —% | 30 | ||
Normal | — | 100% | 40 | ||
|
By transfer from another generation
| ||||||||||||||||||||||||
| ||||||||||||||||||||||||
|