From c7a573c577c18c9237851f3a10d64f86381526fd Mon Sep 17 00:00:00 2001 From: funanamy Date: Sat, 29 Sep 2018 19:31:12 +0800 Subject: [PATCH] fix(preset): plugin invoke order don't sort by unicode order --- packages/@vue/cli/lib/Creator.js | 2 +- packages/@vue/cli/lib/util/sortObject.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/@vue/cli/lib/Creator.js b/packages/@vue/cli/lib/Creator.js index a3192e7839..39974360fa 100644 --- a/packages/@vue/cli/lib/Creator.js +++ b/packages/@vue/cli/lib/Creator.js @@ -310,7 +310,7 @@ module.exports = class Creator extends EventEmitter { // { id: options } => [{ id, apply, options }] async resolvePlugins (rawPlugins) { // ensure cli-service is invoked first - rawPlugins = sortObject(rawPlugins, ['@vue/cli-service']) + rawPlugins = sortObject(rawPlugins, ['@vue/cli-service'], true) const plugins = [] for (const id of Object.keys(rawPlugins)) { const apply = loadModule(`${id}/generator`, this.context) || (() => {}) diff --git a/packages/@vue/cli/lib/util/sortObject.js b/packages/@vue/cli/lib/util/sortObject.js index a46fe7f1f8..7b4dd1ad74 100644 --- a/packages/@vue/cli/lib/util/sortObject.js +++ b/packages/@vue/cli/lib/util/sortObject.js @@ -1,4 +1,4 @@ -module.exports = function sortObject (obj, keyOrder) { +module.exports = function sortObject (obj, keyOrder, dontSortByUnicode) { if (!obj) return const res = {} @@ -11,7 +11,7 @@ module.exports = function sortObject (obj, keyOrder) { const keys = Object.keys(obj) - keys.sort() + !dontSortByUnicode && keys.sort() keys.forEach(key => { res[key] = obj[key] })