From 2b438f84cd01a74334f1cab4d9c4373fa0bb0f5a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=98=89=E6=B6=B5?= Date: Mon, 30 Dec 2019 15:14:13 +0800 Subject: [PATCH] chore(cli): remove decamelize pkg for compatiblity issues --- packages/vant-cli/package.json | 1 - packages/vant-cli/site/common/index.js | 7 +++++ packages/vant-cli/site/desktop/router.js | 7 +++-- .../site/mobile/components/DemoSection.vue | 4 +-- packages/vant-cli/site/mobile/router.js | 4 +-- packages/vant-cli/src/common/index.ts | 10 +++++-- .../src/compiler/gen-site-mobile-shared.ts | 2 +- packages/vant-cli/yarn.lock | 27 ------------------- 8 files changed, 23 insertions(+), 39 deletions(-) diff --git a/packages/vant-cli/package.json b/packages/vant-cli/package.json index 3bf829abe..1c821b0ea 100644 --- a/packages/vant-cli/package.json +++ b/packages/vant-cli/package.json @@ -72,7 +72,6 @@ "cross-env": "^6.0.3", "css-loader": "^3.4.0", "csso": "^4.0.2", - "decamelize": "^3.2.0", "eslint": "^6.7.2", "find-babel-config": "^1.2.0", "gh-pages": "2.0.1", diff --git a/packages/vant-cli/site/common/index.js b/packages/vant-cli/site/common/index.js index 7bc50e0eb..a118e1802 100644 --- a/packages/vant-cli/site/common/index.js +++ b/packages/vant-cli/site/common/index.js @@ -20,6 +20,13 @@ function iframeReady(iframe, callback) { const ua = navigator.userAgent.toLowerCase(); const isMobile = /ios|iphone|ipod|ipad|android/.test(ua); +export function decamelize(str, sep = '-') { + return str + .replace(/([a-z\d])([A-Z])/g, '$1' + sep + '$2') + .replace(/([A-Z]+)([A-Z][a-z\d]+)/g, '$1' + sep + '$2') + .toLowerCase(); +} + export { isMobile, iframeReady diff --git a/packages/vant-cli/site/desktop/router.js b/packages/vant-cli/site/desktop/router.js index 3f9e44d13..b283ad334 100644 --- a/packages/vant-cli/site/desktop/router.js +++ b/packages/vant-cli/site/desktop/router.js @@ -1,7 +1,6 @@ import Vue from 'vue'; import VueRouter from 'vue-router'; -import decamelize from 'decamelize'; -import { isMobile } from '../common'; +import { isMobile, decamelize } from '../common'; import { config, documents } from 'site-desktop-shared'; import { getLang, setDefaultLang } from '../common/locales'; import '../common/iframe-router'; @@ -20,13 +19,13 @@ function parseName(name) { const component = pairs.shift(); return { - component: `${decamelize(component, '-')}`, + component: `${decamelize(component)}`, lang: pairs.join('-') }; } return { - component: `${decamelize(name, '-')}`, + component: `${decamelize(name)}`, lang: '' }; } diff --git a/packages/vant-cli/site/mobile/components/DemoSection.vue b/packages/vant-cli/site/mobile/components/DemoSection.vue index 9e952a2ff..969a8ff72 100644 --- a/packages/vant-cli/site/mobile/components/DemoSection.vue +++ b/packages/vant-cli/site/mobile/components/DemoSection.vue @@ -5,7 +5,7 @@