mirror of
https://github.com/zhigang1992/angular.js.git
synced 2026-01-12 22:45:52 +08:00
docs(changelog): release notes for 1.3.0-beta.16 pizza-transubstantiation
This commit is contained in:
182
CHANGELOG.md
182
CHANGELOG.md
@@ -1,4 +1,186 @@
|
||||
|
||||
<a name="1.3.0-beta.16"></a>
|
||||
# 1.3.0-beta.16 pizza-transubstantiation (2014-07-18)
|
||||
|
||||
## Bug Fixes
|
||||
|
||||
- **$cookie:** use `decodeURIComponent` instead of unescape for cookie reading
|
||||
([1c9ab40d](https://github.com/angular/angular.js/commit/1c9ab40d286ffdb1b41d30ca8d861b53175bfc24),
|
||||
[#8125](https://github.com/angular/angular.js/issues/8125))
|
||||
- **$http:** fix double-quoted date issue when encoding params
|
||||
([9dce42b3](https://github.com/angular/angular.js/commit/9dce42b3c26eb02621723172a68725980369b849),
|
||||
[#8150](https://github.com/angular/angular.js/issues/8150), [#6128](https://github.com/angular/angular.js/issues/6128), [#8154](https://github.com/angular/angular.js/issues/8154))
|
||||
- **$location:** handle plus character in query strings
|
||||
([3f4ee151](https://github.com/angular/angular.js/commit/3f4ee1513901f55d6007e3fc3948458adf4ac656),
|
||||
[#3042](https://github.com/angular/angular.js/issues/3042))
|
||||
- **$rootScope:**
|
||||
- `$watchCollection` should handle `NaN` in objects
|
||||
([db9f2570](https://github.com/angular/angular.js/commit/db9f2570c18d77d0e51d5a7afa139d25d0bdc470),
|
||||
[#7930](https://github.com/angular/angular.js/issues/7930))
|
||||
- remove support for a watch action to be a string
|
||||
([02c0ed27](https://github.com/angular/angular.js/commit/02c0ed27bc375d5352fefdd7e34aad9758621283),
|
||||
[#8190](https://github.com/angular/angular.js/issues/8190))
|
||||
- **csp:** fix autodetection of CSP + better docs
|
||||
([0113f225](https://github.com/angular/angular.js/commit/0113f2257415422729d5c2a9bdba76c1d0a17a13),
|
||||
[#8162](https://github.com/angular/angular.js/issues/8162), [#8191](https://github.com/angular/angular.js/issues/8191))
|
||||
- **ngList:** use custom separators for re-joining list items
|
||||
([c6c9d26e](https://github.com/angular/angular.js/commit/c6c9d26e3487ce24ece390c26994123964f805b0),
|
||||
[#4008](https://github.com/angular/angular.js/issues/4008), [#2561](https://github.com/angular/angular.js/issues/2561), [#4344](https://github.com/angular/angular.js/issues/4344))
|
||||
- **ngRoute:** remove unnecessary call to `decodeURIComponent`
|
||||
([528f56a6](https://github.com/angular/angular.js/commit/528f56a690295650f54eeb2238609446635c5db0),
|
||||
[#6326](https://github.com/angular/angular.js/issues/6326), [#6327](https://github.com/angular/angular.js/issues/6327))
|
||||
- **ngSanitize:** follow HTML parser rules for start tags / allow < in text content
|
||||
([f6681d41](https://github.com/angular/angular.js/commit/f6681d41a493efa6566f8a8a0b6ec39547e572ef),
|
||||
[#8212](https://github.com/angular/angular.js/issues/8212), [#8193](https://github.com/angular/angular.js/issues/8193))
|
||||
- **ngSwitch:**
|
||||
- interoperate with multi-element transclude directives
|
||||
([c20d438a](https://github.com/angular/angular.js/commit/c20d438ac9b9757331d096969a73c782c38e098a),
|
||||
[#8235](https://github.com/angular/angular.js/issues/8235), [#8244](https://github.com/angular/angular.js/issues/8244))
|
||||
- use the correct transclusion scope
|
||||
([4f32e3ee](https://github.com/angular/angular.js/commit/4f32e3eef152bcaab7f7ab151fc824e71a591473),
|
||||
[#8235](https://github.com/angular/angular.js/issues/8235))
|
||||
- **orderBy:** correctly order by date values
|
||||
([92bceb5c](https://github.com/angular/angular.js/commit/92bceb5c5b6e4a5a8fee01e1e0dfcf4674858cf2),
|
||||
[#6675](https://github.com/angular/angular.js/issues/6675), [#6746](https://github.com/angular/angular.js/issues/6746))
|
||||
- **select:** force visual update in IE
|
||||
([d7f73022](https://github.com/angular/angular.js/commit/d7f730228d58d3a409846e64ba5d0120356691cc),
|
||||
[#7692](https://github.com/angular/angular.js/issues/7692), [#8158](https://github.com/angular/angular.js/issues/8158))
|
||||
|
||||
|
||||
## Features
|
||||
|
||||
- **$compile:** explicitly request multi-element directive behaviour
|
||||
([e8066c4b](https://github.com/angular/angular.js/commit/e8066c4b4ce11496b0d8f39e41b4d753048bca2d),
|
||||
[#5372](https://github.com/angular/angular.js/issues/5372), [#6574](https://github.com/angular/angular.js/issues/6574), [#5370](https://github.com/angular/angular.js/issues/5370), [#8044](https://github.com/angular/angular.js/issues/8044), [#7336](https://github.com/angular/angular.js/issues/7336))
|
||||
- **ngList:** use ngTrim to manage whitespace handling when splitting
|
||||
([8d18d20e](https://github.com/angular/angular.js/commit/8d18d20e316ed9d420f09f46f90027aef2940930))
|
||||
- **ngTransclude:** allow ngTransclude to be used as an element
|
||||
([3dafcba9](https://github.com/angular/angular.js/commit/3dafcba9c1738b85f3adceaac90b747a1b595ea8),
|
||||
[#8141](https://github.com/angular/angular.js/issues/8141))
|
||||
|
||||
|
||||
## Performance Improvements
|
||||
|
||||
- **$compile:** only create jqLite object when necessary
|
||||
([a160f76f](https://github.com/angular/angular.js/commit/a160f76ffa9544cd2ed99f24ba65b5994108f9f5))
|
||||
- **bindOnce** more performant interpolation and lazy one-time binding
|
||||
([86d55c1d](https://github.com/angular/angular.js/commit/86d55c1ded21a5be6091344493d70c6dc4194e43))
|
||||
- **jqLite:** expose the low-level jqLite.data/removeData calls
|
||||
([e4ba8943](https://github.com/angular/angular.js/commit/e4ba89436aa0b96f126ce2c23d0c7f7c785573fe))
|
||||
- **ngBindHtml:** move addClass to the compile phase
|
||||
([903e7352](https://github.com/angular/angular.js/commit/903e7352c9943e4d3757dd1cff58178d4c5375d6),
|
||||
[#8261](https://github.com/angular/angular.js/issues/8261))
|
||||
|
||||
|
||||
## Breaking Changes
|
||||
|
||||
- **$compile:** due to [e8066c4b](https://github.com/angular/angular.js/commit/e8066c4b4ce11496b0d8f39e41b4d753048bca2d),
|
||||
Directives which previously depended on the implicit grouping between
|
||||
directive-start and directive-end attributes must be refactored in order to see this same behaviour.
|
||||
|
||||
Before:
|
||||
|
||||
```html
|
||||
<div data-fancy-directive-start>{{start}}</div>
|
||||
<p>Grouped content</p>
|
||||
<div data-fancy-directive-end>{{end}}</div>
|
||||
```
|
||||
```javascript
|
||||
.directive('fancyDirective', function() {
|
||||
return {
|
||||
link: angular.noop
|
||||
};
|
||||
})
|
||||
```
|
||||
|
||||
After:
|
||||
|
||||
```html
|
||||
<div data-fancy-directive-start>{{start}}</div>
|
||||
<p>Grouped content</p>
|
||||
<div data-fancy-directive-end>{{end}}</div>
|
||||
```
|
||||
```javascript
|
||||
.directive('fancyDirective', function() {
|
||||
return {
|
||||
multiElement: true, // Explicitly mark as a multi-element directive.
|
||||
link: angular.noop
|
||||
};
|
||||
})
|
||||
```
|
||||
|
||||
Closes #5372
|
||||
Closes #6574
|
||||
Closes #5370
|
||||
Closes #8044
|
||||
Closes #7336
|
||||
|
||||
- **$rootScope:** due to [02c0ed27](https://github.com/angular/angular.js/commit/02c0ed27bc375d5352fefdd7e34aad9758621283),
|
||||
|
||||
|
||||
Previously, it was possible for an action passed to $watch
|
||||
to be a string, interpreted as an angular expresison. This is no longer supported.
|
||||
The action now has to be a function.
|
||||
Passing an action to $watch is still optional.
|
||||
|
||||
Before:
|
||||
|
||||
```javascript
|
||||
$scope.$watch('state', ' name="" ');
|
||||
```
|
||||
|
||||
After:
|
||||
|
||||
```javascript
|
||||
$scope.$watch('state', function () {
|
||||
$scope.name = "";
|
||||
});
|
||||
```
|
||||
|
||||
Closes #8190
|
||||
|
||||
- **bootstrap:** due to [666a3835](https://github.com/angular/angular.js/commit/666a3835d231b3f77f907276be18b3c0086e5d12),
|
||||
|
||||
|
||||
If using any of the mechanisms specified above, then migrate by
|
||||
specifying the attribute `ng-app` to the root element. E.g.
|
||||
|
||||
```html
|
||||
<div ng-app="module">...</div>
|
||||
```
|
||||
|
||||
Closes #8147
|
||||
|
||||
- **ngList:** due to [c6c9d26e](https://github.com/angular/angular.js/commit/c6c9d26e3487ce24ece390c26994123964f805b0),
|
||||
|
||||
|
||||
The `ngList` directive no longer supports splitting the view value
|
||||
via a regular expression. We need to be able to re-join list items back
|
||||
together and doing this when you can split with regular expressions can
|
||||
lead to inconsistent behaviour and would be much more complex to support.
|
||||
|
||||
If your application relies upon ngList splitting with a regular expression
|
||||
then you should either try to convert the separator to a simple string or
|
||||
you can implement your own version of this directive for you application.
|
||||
|
||||
Closes #4008
|
||||
Closes #2561
|
||||
Closes #4344
|
||||
|
||||
- **ngSwitch:** due to [4f32e3ee](https://github.com/angular/angular.js/commit/4f32e3eef152bcaab7f7ab151fc824e71a591473),
|
||||
|
||||
** Directive Priority Changed ** - this commit changes the priority
|
||||
of `ngSwitchWhen` and `ngSwitchDefault` from `800` to `1200`. This makes their
|
||||
priority higher than `ngRepeat`, which allows items to be repeated on
|
||||
the switch case element reliably.
|
||||
|
||||
In general your directives should have a lower priority than these directives
|
||||
if you want them to exist inside the case elements. If you relied on the
|
||||
priority of these directives then you should check that your code still
|
||||
operates correctly.
|
||||
|
||||
Closes #8235
|
||||
|
||||
<a name="1.3.0-beta.15"></a>
|
||||
# 1.3.0-beta.15 unbelievable-advancement (2014-07-11)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user