Skip to content
This repository was archived by the owner on Nov 30, 2018. It is now read-only.
This repository was archived by the owner on Nov 30, 2018. It is now read-only.

Lodash deep cloning marker's modal object freezes my page for 2.5 seconds on Chrome #1672

@pvm1987

Description

@pvm1987

On a heavy page with many angular's watchers I add just a single marker with ui-gmap-marker directive. After debugging I found the following row is the place where my page freezes for about 2.5 seconds on Chrome and 0.6 seconds on Firefox:

function MarkerChildModel(scope, model1, keys, gMap, defaults, doClick, gManager, doDrawSelf, trackModel, needRedraw) {
...
this.clonedModel = _.clone(this.model, true); // deep clone
...
}

If I remove the last boolean param (non deep cloning) my page is rendered without freezing. Can you explain me why we need deep copy here? In my case everything works as expected if I change it to:

function MarkerChildModel(scope, model1, keys, gMap, defaults, doClick, gManager, doDrawSelf, trackModel, needRedraw) {
...
this.clonedModel = _.clone(this.model); // non-deep clone
...
}

Is there something it could be broken according this change which improves the rendering page time?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions