From 0276bcb8b3e54c3d9f2ac8275418ba631eef4020 Mon Sep 17 00:00:00 2001 From: Book Pauk Date: Sat, 2 Feb 2019 18:22:00 +0700 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B4=D0=B5=D0=BB=D0=BA=D0=B8=20Se?= =?UTF-8?q?archPage?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Reader/SearchPage/SearchPage.vue | 48 ++++++++++--------- 1 file changed, 26 insertions(+), 22 deletions(-) diff --git a/client/components/Reader/SearchPage/SearchPage.vue b/client/components/Reader/SearchPage/SearchPage.vue index a5d9e89b..06cadc30 100644 --- a/client/components/Reader/SearchPage/SearchPage.vue +++ b/client/components/Reader/SearchPage/SearchPage.vue @@ -61,34 +61,38 @@ class SearchPage extends Vue { } async init(parsed) { - this.parsed = parsed; + if (this.parsed != parsed) { + this.initStep = true; + this.stopInit = false; + this.header = 'Подготовка'; + await this.$nextTick(); - this.initStep = true; - this.stopInit = false; - this.header = 'Подготовка'; - await this.$nextTick(); + let prevPerc = 0; + let text = ''; + for (let i = 0; i < parsed.para.length; i++) { + const p = parsed.para[i]; + const parts = parsed.splitToStyle(p.text); + if (this.stopInit) + break; - let prevPerc = 0; - let text = ''; - for (let i = 0; i < parsed.para.length; i++) { - const p = parsed.para[i]; - const parts = parsed.splitToStyle(p.text); - if (this.stopInit) - break; + for (const part of parts) + text += part.text; - for (const part of parts) - text += part.text; + const perc = Math.round(i/parsed.para.length*100); - const perc = Math.round(i/parsed.para.length*100); - - if (perc != prevPerc) { - this.initPercentage = perc; - await sleep(1); - prevPerc = perc; + if (perc != prevPerc) { + this.initPercentage = perc; + await sleep(1); + prevPerc = perc; + } } + this.text = text.toLowerCase(); + this.initStep = false; + this.needle = ''; + this.foundList = []; + this.foundCur = -1; + this.parsed = parsed; } - this.text = text.toLowerCase(); - this.initStep = false; this.header = 'Найти'; await this.$nextTick();