Commit 1f561319f3d3738f63ab22623b599519fe102829

Authored by 梁灏
1 parent fcf37f49

update webpack config

update webpack config
build/webpack.dev.config.js
@@ -4,6 +4,7 @@ @@ -4,6 +4,7 @@
4 4
5 var path = require('path'); 5 var path = require('path');
6 var webpack = require('webpack'); 6 var webpack = require('webpack');
  7 +var ExtractTextPlugin = require('extract-text-webpack-plugin');
7 8
8 module.exports = { 9 module.exports = {
9 // 入口 10 // 入口
@@ -98,10 +99,8 @@ module.exports = { @@ -98,10 +99,8 @@ module.exports = {
98 } 99 }
99 }, 100 },
100 plugins: [ 101 plugins: [
101 - // new ExtractTextPlugin({ filename: '[name].css', disable: false, allChunks: true }),  
102 - // new ExtractTextPlugin("[name].css",{ allChunks : true,resolve : ['modules'] }), // 提取CSS 102 + new ExtractTextPlugin({ filename: '[name].css', disable: false, allChunks: true }), // 提取CSS
103 // https://doc.webpack-china.org/plugins/commons-chunk-plugin/ 103 // https://doc.webpack-china.org/plugins/commons-chunk-plugin/
104 new webpack.optimize.CommonsChunkPlugin({ name: 'vendors', filename: 'vendor.js' }) 104 new webpack.optimize.CommonsChunkPlugin({ name: 'vendors', filename: 'vendor.js' })
105 - // new webpack.optimize.CommonsChunkPlugin('vendors', 'vendors.js'), // 提取第三方库  
106 ] 105 ]
107 }; 106 };
@@ -57,6 +57,7 @@ @@ -57,6 +57,7 @@
57 "css-loader": "^0.23.1", 57 "css-loader": "^0.23.1",
58 "eslint": "^3.12.2", 58 "eslint": "^3.12.2",
59 "eslint-plugin-html": "^1.7.0", 59 "eslint-plugin-html": "^1.7.0",
  60 + "extract-text-webpack-plugin": "^2.0.0",
60 "file-loader": "^0.8.5", 61 "file-loader": "^0.8.5",
61 "gulp": "^3.9.1", 62 "gulp": "^3.9.1",
62 "gulp-autoprefixer": "^3.1.1", 63 "gulp-autoprefixer": "^3.1.1",
@@ -15,162 +15,17 @@ Vue.use(iView, { locale }); @@ -15,162 +15,17 @@ Vue.use(iView, { locale });
15 Vue.config.debug = true; 15 Vue.config.debug = true;
16 16
17 // 路由配置 17 // 路由配置
18 -var router = new VueRouter({  
19 - history: true  
20 -});  
21 -  
22 -router.map({  
23 - '/button': {  
24 - component: function (resolve) {  
25 - require(['./routers/button.vue'], resolve);  
26 - }  
27 - },  
28 - '/card': {  
29 - component: function (resolve) {  
30 - require(['./routers/card.vue'], resolve);  
31 - }  
32 - },  
33 - '/message': {  
34 - component: function (resolve) {  
35 - require(['./routers/message.vue'], resolve);  
36 - }  
37 - },  
38 - '/more': {  
39 - component: function (resolve) {  
40 - require(['./routers/more.vue'], resolve);  
41 - }  
42 - },  
43 - '/page': {  
44 - component: function (resolve) {  
45 - require(['./routers/page.vue'], resolve);  
46 - }  
47 - },  
48 - '/poptip': {  
49 - component: function (resolve) {  
50 - require(['./routers/poptip.vue'], resolve);  
51 - }  
52 - },  
53 - '/radio': {  
54 - component: function (resolve) {  
55 - require(['./routers/radio.vue'], resolve);  
56 - }  
57 - },  
58 - '/select': {  
59 - component: function (resolve) {  
60 - require(['./routers/select.vue'], resolve);  
61 - }  
62 - },  
63 - '/slider': {  
64 - component: function (resolve) {  
65 - require(['./routers/slider.vue'], resolve);  
66 - }  
67 - },  
68 - '/step': {  
69 - component: function (resolve) {  
70 - require(['./routers/step.vue'], resolve);  
71 - }  
72 - },  
73 - '/switch': {  
74 - component: function (resolve) {  
75 - require(['./routers/switch.vue'], resolve);  
76 - }  
77 - },  
78 - '/alert': {  
79 - component: function (resolve) {  
80 - require(['./routers/alert.vue'], resolve);  
81 - }  
82 - },  
83 - '/tag': {  
84 - component: function (resolve) {  
85 - require(['./routers/tag.vue'], resolve);  
86 - }  
87 - },  
88 - '/input': {  
89 - component: function (resolve) {  
90 - require(['./routers/input.vue'], resolve);  
91 - }  
92 - },  
93 - '/tooltip': {  
94 - component: function (resolve) {  
95 - require(['./routers/tooltip.vue'], resolve);  
96 - }  
97 - },  
98 - '/cascader': {  
99 - component: function (resolve) {  
100 - require(['./routers/cascader.vue'], resolve); 18 +const router = new VueRouter({
  19 + routes: [
  20 + {
  21 + path: '/affix',
  22 + component: require('./routers/affix.vue')
101 } 23 }
102 - },  
103 - '/transfer': {  
104 - component: function (resolve) {  
105 - require(['./routers/transfer.vue'], resolve);  
106 - }  
107 - },  
108 - '/table': {  
109 - component: function (resolve) {  
110 - require(['./routers/table.vue'], resolve);  
111 - }  
112 - },  
113 - '/dropdown': {  
114 - component: function (resolve) {  
115 - require(['./routers/dropdown.vue'], resolve);  
116 - }  
117 - },  
118 - '/tabs': {  
119 - component: function (resolve) {  
120 - require(['./routers/tabs.vue'], resolve);  
121 - }  
122 - },  
123 - '/menu': {  
124 - component: function (resolve) {  
125 - require(['./routers/menu.vue'], resolve);  
126 - }  
127 - },  
128 - '/date': {  
129 - component: function (resolve) {  
130 - require(['./routers/date.vue'], resolve);  
131 - }  
132 - },  
133 - '/form': {  
134 - component: function (resolve) {  
135 - require(['./routers/form.vue'], resolve);  
136 - }  
137 - },  
138 - '/carousel': {  
139 - component: function (resolve) {  
140 - require(['./routers/carousel.vue'], resolve);  
141 - }  
142 - },  
143 - '/rate': {  
144 - component: function (resolve) {  
145 - require(['./routers/rate.vue'], resolve);  
146 - }  
147 - },  
148 - '/upload': {  
149 - component: function (resolve) {  
150 - require(['./routers/upload.vue'], resolve);  
151 - }  
152 - },  
153 - '/tree': {  
154 - component: function (resolve) {  
155 - require(['./routers/tree.vue'], resolve);  
156 - }  
157 - },  
158 - '/notice': {  
159 - component: function (resolve) {  
160 - require(['./routers/notice.vue'], resolve);  
161 - }  
162 - },  
163 -});  
164 -  
165 -router.beforeEach(function () {  
166 - window.scrollTo(0, 0);  
167 -});  
168 -  
169 -router.afterEach(function (transition) {  
170 - 24 + ]
171 }); 25 });
172 26
173 -router.redirect({  
174 - '*': "/button" 27 +new Vue({
  28 + el: '#app',
  29 + router: router,
  30 + render: h => h(App)
175 }); 31 });
176 -router.start(App, '#app');  
test/routers/affix.vue 0 → 100644
  1 +<template>
  2 + <Affix>
  3 + <span class="demo-affix">固定在最顶部</span>
  4 + </Affix>
  5 +</template>
  6 +<script>
  7 + export default {
  8 +
  9 + }
  10 +</script>