From 9cfc812fcc810a95f904824d707eb29cf6fa03a5 Mon Sep 17 00:00:00 2001 From: eight Date: Sun, 2 Sep 2018 12:18:58 +0800 Subject: [PATCH] Fix: use proxy to reflect API --- edit/editor-worker.js | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/edit/editor-worker.js b/edit/editor-worker.js index 7aca26e3..e2ab9645 100644 --- a/edit/editor-worker.js +++ b/edit/editor-worker.js @@ -2,20 +2,15 @@ var editorWorker = (() => { // eslint-disable-line no-var let worker; - return createAPI(['csslint', 'stylelint', 'parseMozFormat', 'getStylelintRules', 'getCsslintRules']); - - function createAPI(keys) { - const output = {}; - for (const key of keys) { - output[key] = (...args) => { + return new Proxy({}, { + get: (target, prop) => + (...args) => { if (!worker) { worker = createWorker(); } - return worker.invoke(key, args); - }; - } - return output; - } + return worker.invoke(prop, args); + } + }); function createWorker() { let requestId = 0;