From 6b40e7354894a07779e1d449987124c922e3217a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E6=9D=A8?= <1711467488@qq.com> Date: Thu, 22 Feb 2018 13:20:17 +0800 Subject: [PATCH] no message Former-commit-id: eec1191238aa909367f3cfbe02bfa7b539ce25ef Former-commit-id: 159f414851f34eb041b573c47581f587abbdb095 Former-commit-id: ab2915d004843295250809727b35a6070641ebe9 --- build/webpack.base.conf.js | 2 +- src/assets/icons/index.js | 5 +++++ src/components/core/register.js | 1 + src/main.js | 3 +++ src/pages/demo/components/icon/svg.vue | 5 +++++ src/router/menu/_components.js | 10 ++++++++++ 6 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 src/pages/demo/components/icon/svg.vue diff --git a/build/webpack.base.conf.js b/build/webpack.base.conf.js index 10998668..06e07b12 100755 --- a/build/webpack.base.conf.js +++ b/build/webpack.base.conf.js @@ -55,7 +55,7 @@ module.exports = { { test: /\.svg$/, loader: 'svg-sprite-loader', - include: [resolve('src/assets/icons')], + include: [resolve('src/assets/icons/svg')], options: { symbolId: 'icon-[name]' } diff --git a/src/assets/icons/index.js b/src/assets/icons/index.js index e69de29b..066fddb3 100644 --- a/src/assets/icons/index.js +++ b/src/assets/icons/index.js @@ -0,0 +1,5 @@ +const requireAll = requireContext => requireContext.keys().map(requireContext) +const req = require.context('./svg', false, /\.svg$/) +const iconMap = requireAll(req) + +console.log(iconMap) diff --git a/src/components/core/register.js b/src/components/core/register.js index d52e9302..a6a10f95 100644 --- a/src/components/core/register.js +++ b/src/components/core/register.js @@ -5,6 +5,7 @@ Vue.component('CountUp', resolve => { require(['@/components/core/CountUp'], res Vue.component('Highlight', resolve => { require(['@/components/core/Highlight'], resolve) }) Vue.component('Icon', resolve => { require(['@/components/core/Icon'], resolve) }) Vue.component('IconSelect', resolve => { require(['@/components/core/IconSelect/index.vue'], resolve) }) +Vue.component('IconSvg', resolve => { require(['@/components/core/IconSvg/index.vue'], resolve) }) Vue.component('Markdown', resolve => { require(['@/components/core/Markdown'], resolve) }) Vue.component('QuillEditor', resolve => { require(['@/components/core/QuillEditor'], resolve) }) Vue.component('SimpleMDE', resolve => { require(['@/components/core/SimpleMDE'], resolve) }) diff --git a/src/main.js b/src/main.js index 8c92156f..57870b9a 100755 --- a/src/main.js +++ b/src/main.js @@ -12,6 +12,9 @@ import '@/assets/library/font-awesome-4.7.0/css/font-awesome.min.css' // simplemde css import 'simplemde/dist/simplemde.min.css' +// svg图标 +import '@/assets/icons/index.js' + // markdown主题 import 'github-markdown-css' diff --git a/src/pages/demo/components/icon/svg.vue b/src/pages/demo/components/icon/svg.vue new file mode 100644 index 00000000..ee8f1b15 --- /dev/null +++ b/src/pages/demo/components/icon/svg.vue @@ -0,0 +1,5 @@ + diff --git a/src/router/menu/_components.js b/src/router/menu/_components.js index dc6af7b3..8d0a1e19 100644 --- a/src/router/menu/_components.js +++ b/src/router/menu/_components.js @@ -63,6 +63,16 @@ export const menu = { }, component: resolve => { require(['@/pages/demo/components/icon/icon.vue'], resolve) } }, + { + title: '图标组件 SVG', + icon: 'file-o', + path: 'icon/svg', + name: 'demo-components-icon-svg', + meta: { + requiresAuth: true + }, + component: resolve => { require(['@/pages/demo/components/icon/svg.vue'], resolve) } + }, { title: '图标选择器', icon: 'file-o',