AngularJS 1.5.0-rc.2 发布,HTML 的 Web 框架
AngularJS 1.5.0-rc.2 发布,更新如下:
Deprecation Warning
The
ngTouch
module'sngClick
directive has been deprecated and disabled by default. See the breaking changes section for more information
Bug Fixes
$compile:
properly denormalize templates when only one of the start/end symbols is different (8348365d,#13848)
handle boolean attributes in
@
bindings (db5e0ffe,#13767, #13769)$parse: Preserve expensive checks when runnning $eval inside an expression (acfda102)
dateFilter: follow the CLDR on pattern escape sequences (1ab4e444,#12839)
ngAnimate:
cancel fallback timeout when animation ends normally (e9c406b2,#13787)
correctly handle
$animate.pin()
host elements (7700e2df,#13783)properly cancel-out previously running class-based animations (20b8ece4,#10156, #13822)
ensure that animate promises resolve when the document is hidden (52ea4110)
do not trigger animations if the document is hidden (a3a7afd3,#12842, #13776)
ngSanitize: Blacklist the attribute
usemap
(234053fc)ngTouch: deprecate ngClick and disable it by default (0dfc1dfe,#4030, #5307, #6001, #6432, #7231, #11358, #12082, #12153, #12392, #12545, #12867, #13213, #13558, #3296, #3347, #3447, #3999, #4428, #6251, #6330, #7134, #7935, #9724, #9744, #9872, #10211, #10366, #10918, #11197, #11261, #11342, #11577, #12150, #12317, #12455, #12734, #13122, #13272, #13447)
Features
$compile:
allow required controllers to be bound to the directive controller (56c3666f,#6040, #5893, #13763)
allow directive definition property
require
to be an object (cd21216f,#8401, #13763)call
$ngOnInit
on directive controllers after all sibling controllers have been constructed (3ffdf380,#13763)$locale: include original locale ID in
$locale
(63492a02,#13390)$resource: add support for timeout in cancellable actions (d641901b,#13824)
Performance Improvements
$compile: avoid needless overhead when wrapping text nodes (92e4801d)
ngAnimate: speed up
areAnimationsAllowed
check (683bd92f)
Breaking Changes
ngTouch: due to 0dfc1dfe,
The ngClick
override directive from the ngTouch
module is deprecated and disabled by default. This means that on touch-based devices, users might now experience a 300ms delay before a click event is fired.
If you rely on this directive, you can still enable it with the $touchProvider.ngClickOverrideEnabled()
method:
angular.module('myApp').config(function($touchProvider) { $touchProvider.ngClickOverrideEnabled(true); });
Going forward, we recommend using FastClick or perhaps one of the Angular 3rd party touch-related modules that provide similar functionality.
Also note that modern browsers already remove the 300ms delay under some circumstances:
Chrome and Firefox for Android remove the 300ms delay when the well-known
<meta name="viewport" content="width=device-width">
is setInternet Explorer removes the delay when
touch-action
css property is set tonone
ormanipulation
Since iOs 8, Safari removes the delay on so-called "slow taps"
See this article by Telerik for more info on the topic.
Note that this change does not affect the ngSwipe
directive.
详细改进请看发行说明。
下载页面:v1.5.0-rc.2