Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
<parent prop1="exp1" prop2="exp2">
<child prop3="exp3" prop4="exp4"></child>
</parent>
<parent prop1="exp1" prop2="exp2">
<child prop3="exp3" prop4="exp4"></child>
</parent>
while (op) {
const getter = getterFor(op.fieldName);
const oldValue = op.value;
const newValue = getter(op.context);
if (o...
const talk = obj.talk;
const rating = talk.rating;
if (rating !== this.previousRating) {
this.previousRating = rating;
thi...
<formatted-rating [rating]="talk.rating"/>
class Talk_ChangeDetector {
//...
detectChanges() {
//...
const talk = obj.talk...
•
•
•
•
•
//code
a();
setTimeout(b, 0);
setTimeout(c, 0);
d();
//run order
a
d
b // async
c // async
b
c
//code
start();
a();
setTimeout(b, 0);
setTimeout(c, 0);
d();
stop();
// start
a
d
// stop
b // missed
c // missed
start();
a();
d();
end();
start();
b();
end();
start();
c();
end();
onZoneEnter();
a();
d();
onZoneLeave();
onZoneEnter();
b();
onZoneLeave();
onZoneEnter();
c();
onZoneLeave();
•
•
•
•
•
•
•
•
socket.on('data', (data) => {
model.data = data;
$scope.$apply();
});
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Angular2 Change Detection, Тимофей Яценко, MoscowJS 31
Upcoming SlideShare
Loading in …5
×
Upcoming SlideShare
3.2検索例題解答例2016
Next
Download to read offline and view in fullscreen.

0

Share

Download to read offline

Angular2 Change Detection, Тимофей Яценко, MoscowJS 31

Download to read offline

Команда разработчиков Angular2 провела огромную работу над Change Detector, он стал быстрым и "умным". В докладе рассмотрим две основные фазы Angular2 приложения, куда все таки делся $apply(), и почему Angular2 обещает быть фантастически быстрым (в сравнении с AngularJs).

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all
  • Be the first to like this

Angular2 Change Detection, Тимофей Яценко, MoscowJS 31

  1. 1. <parent prop1="exp1" prop2="exp2"> <child prop3="exp3" prop4="exp4"></child> </parent>
  2. 2. <parent prop1="exp1" prop2="exp2"> <child prop3="exp3" prop4="exp4"></child> </parent>
  3. 3. while (op) { const getter = getterFor(op.fieldName); const oldValue = op.value; const newValue = getter(op.context); if (oldValue !== newValue) { op.value = newValue; const fn = reactionFunctionFor(op); fn(oldValue, newValue); } op = op.next; } <formatted-rating [rating]="talk.rating"/>
  4. 4. const talk = obj.talk; const rating = talk.rating; if (rating !== this.previousRating) { this.previousRating = rating; this.formattedRatingComponent.rating = rating; } <formatted-rating [rating]="talk.rating"/>
  5. 5. <formatted-rating [rating]="talk.rating"/> class Talk_ChangeDetector { //... detectChanges() { //... const talk = obj.talk; const rating = talk.rating; if (rating !== this.previousRating) { this.previousRating = rating; this.formattedRatingComponent.rating = rating; } } }
  6. 6. • • • • •
  7. 7. //code a(); setTimeout(b, 0); setTimeout(c, 0); d(); //run order a d b // async c // async b c
  8. 8. //code start(); a(); setTimeout(b, 0); setTimeout(c, 0); d(); stop(); // start a d // stop b // missed c // missed
  9. 9. start(); a(); d(); end(); start(); b(); end(); start(); c(); end();
  10. 10. onZoneEnter(); a(); d(); onZoneLeave(); onZoneEnter(); b(); onZoneLeave(); onZoneEnter(); c(); onZoneLeave();
  11. 11. • • • •
  12. 12. • • • •
  13. 13. socket.on('data', (data) => { model.data = data; $scope.$apply(); });

Команда разработчиков Angular2 провела огромную работу над Change Detector, он стал быстрым и "умным". В докладе рассмотрим две основные фазы Angular2 приложения, куда все таки делся $apply(), и почему Angular2 обещает быть фантастически быстрым (в сравнении с AngularJs).

Views

Total views

496

On Slideshare

0

From embeds

0

Number of embeds

0

Actions

Downloads

4

Shares

0

Comments

0

Likes

0

×