1
0
mirror of https://github.com/ianstormtaylor/slate.git synced 2025-08-21 06:31:28 +02:00

Mutate newDirtyPaths instead of creating a new array every iteration (#2559)

* Mutate newDirtyPaths instead of creating a new array every iteration

* Switch to map + Array.prototype.concat.apply to improve readability

* Update editor.js
This commit is contained in:
Brendan
2019-08-19 11:19:24 -05:00
committed by Ian Storm Taylor
parent 0edcc89692
commit 6672f553e9

View File

@@ -100,14 +100,14 @@ class Editor {
// Get the paths of the affected nodes, and mark them as dirty. // Get the paths of the affected nodes, and mark them as dirty.
const newDirtyPaths = getDirtyPaths(operation) const newDirtyPaths = getDirtyPaths(operation)
const dirty = this.tmp.dirty.reduce((memo, path) => {
const dirty = this.tmp.dirty.map(path => {
path = PathUtils.create(path) path = PathUtils.create(path)
const transformed = PathUtils.transform(path, operation) const transformed = PathUtils.transform(path, operation)
memo = memo.concat(transformed.toArray()) return transformed.toArray()
return memo })
}, newDirtyPaths)
this.tmp.dirty = dirty this.tmp.dirty = Array.prototype.concat.apply(newDirtyPaths, dirty)
// If we're not already, queue the flushing process on the next tick. // If we're not already, queue the flushing process on the next tick.
if (!this.tmp.flushing) { if (!this.tmp.flushing) {