update webpack config

update webpack config
This commit is contained in:
梁灏 2017-03-01 11:35:00 +08:00
parent 36fa7c6c18
commit 9e74a856f6
5 changed files with 140 additions and 154 deletions

View file

@ -4,7 +4,6 @@
var path = require('path');
var webpack = require('webpack');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
module.exports = {
// 入口
@ -29,10 +28,8 @@ module.exports = {
loader: 'vue-loader',
options: {
loaders: {
css: ExtractTextPlugin.extract({
use: 'css-loader',
fallback: 'vue-style-loader' // <- this is a dep of vue-loader, so no need to explicitly install if using npm3
})
css: 'vue-style-loader!css-loader',
less: 'vue-style-loader!css-loader!less-loader'
},
postLoaders: {
html: 'babel-loader'

View file

@ -22,29 +22,24 @@ module.exports = {
}
},
resolve: {
extensions: ['', '.js', '.vue']
extensions: ['.js', '.vue']
},
module: {
loaders: [{
rules: [
{
test: /\.vue$/,
loader: 'vue'
}, {
loader: 'vue-loader',
options: {
postLoaders: {
html: 'babel-loader'
}
}
},
{
test: /\.js$/,
loader: 'babel',
exclude: /node_modules/
}, {
test: /\.css$/,
loader: 'style!css!autoprefixer'
}, {
test: /\.less$/,
loader: 'style!css!less'
}, {
test: /\.(gif|jpg|png|woff|svg|eot|ttf)\??.*$/,
loader: 'url?limit=8192'
}, {
test: /\.(html|tpl)$/,
loader: 'vue-html'
}]
loader: 'babel-loader', exclude: /node_modules/
}
]
},
plugins: [
new webpack.DefinePlugin({

View file

@ -22,29 +22,24 @@ module.exports = {
}
},
resolve: {
extensions: ['', '.js', '.vue']
extensions: ['.js', '.vue']
},
module: {
loaders: [{
rules: [
{
test: /\.vue$/,
loader: 'vue'
}, {
loader: 'vue-loader',
options: {
postLoaders: {
html: 'babel-loader'
}
}
},
{
test: /\.js$/,
loader: 'babel',
exclude: /node_modules/
}, {
test: /\.css$/,
loader: 'style!css!autoprefixer'
}, {
test: /\.less$/,
loader: 'style!css!less'
}, {
test: /\.(gif|jpg|png|woff|svg|eot|ttf)\??.*$/,
loader: 'url?limit=8192'
}, {
test: /\.(html|tpl)$/,
loader: 'vue-html'
}]
loader: 'babel-loader', exclude: /node_modules/
}
]
},
plugins: [
new webpack.DefinePlugin({

View file

@ -57,7 +57,6 @@
"css-loader": "^0.23.1",
"eslint": "^3.12.2",
"eslint-plugin-html": "^1.7.0",
"extract-text-webpack-plugin": "beta",
"file-loader": "^0.8.5",
"gulp": "^3.9.1",
"gulp-autoprefixer": "^3.1.1",

View file

@ -2,112 +2,112 @@
import 'core-js/fn/array/find-index';
import Affix from './components/affix';
import Alert from './components/alert';
import BackTop from './components/back-top';
import Badge from './components/badge';
import Breadcrumb from './components/breadcrumb';
import Button from './components/button';
import Card from './components/card';
import Carousel from './components/carousel';
import Cascader from './components/cascader';
import Checkbox from './components/checkbox';
import Circle from './components/circle';
import Collapse from './components/collapse';
import DatePicker from './components/date-picker';
import Dropdown from './components/dropdown';
import Form from './components/form';
import Icon from './components/icon';
import Input from './components/input';
import InputNumber from './components/input-number';
import LoadingBar from './components/loading-bar';
import Menu from './components/menu';
import Message from './components/message';
import Modal from './components/modal';
import Notice from './components/notice';
import Page from './components/page';
import Poptip from './components/poptip';
import Progress from './components/progress';
import Radio from './components/radio';
import Rate from './components/rate';
import Slider from './components/slider';
import Spin from './components/spin';
import Steps from './components/steps';
import Switch from './components/switch';
import Table from './components/table';
import Tabs from './components/tabs';
import Tag from './components/tag';
import Timeline from './components/timeline';
import TimePicker from './components/time-picker';
import Tooltip from './components/tooltip';
import Transfer from './components/transfer';
import Tree from './components/tree';
import Upload from './components/upload';
import { Row, Col } from './components/layout';
import { Select, Option, OptionGroup } from './components/select';
// import Alert from './components/alert';
// import BackTop from './components/back-top';
// import Badge from './components/badge';
// import Breadcrumb from './components/breadcrumb';
// import Button from './components/button';
// import Card from './components/card';
// import Carousel from './components/carousel';
// import Cascader from './components/cascader';
// import Checkbox from './components/checkbox';
// import Circle from './components/circle';
// import Collapse from './components/collapse';
// import DatePicker from './components/date-picker';
// import Dropdown from './components/dropdown';
// import Form from './components/form';
// import Icon from './components/icon';
// import Input from './components/input';
// import InputNumber from './components/input-number';
// import LoadingBar from './components/loading-bar';
// import Menu from './components/menu';
// import Message from './components/message';
// import Modal from './components/modal';
// import Notice from './components/notice';
// import Page from './components/page';
// import Poptip from './components/poptip';
// import Progress from './components/progress';
// import Radio from './components/radio';
// import Rate from './components/rate';
// import Slider from './components/slider';
// import Spin from './components/spin';
// import Steps from './components/steps';
// import Switch from './components/switch';
// import Table from './components/table';
// import Tabs from './components/tabs';
// import Tag from './components/tag';
// import Timeline from './components/timeline';
// import TimePicker from './components/time-picker';
// import Tooltip from './components/tooltip';
// import Transfer from './components/transfer';
// import Tree from './components/tree';
// import Upload from './components/upload';
// import { Row, Col } from './components/layout';
// import { Select, Option, OptionGroup } from './components/select';
import locale from './locale';
const iview = {
Affix,
Alert,
BackTop,
Badge,
Breadcrumb,
BreadcrumbItem: Breadcrumb.Item,
iButton: Button,
ButtonGroup: Button.Group,
Card,
Carousel,
CarouselItem: Carousel.Item,
Cascader,
Checkbox,
CheckboxGroup: Checkbox.Group,
Circle,
DatePicker,
Dropdown,
DropdownItem: Dropdown.Item,
DropdownMenu: Dropdown.Menu,
iForm: Form,
FormItem: Form.Item,
iCol: Col,
Collapse,
Icon,
iInput: Input,
InputNumber,
LoadingBar,
Menu,
MenuGroup: Menu.Group,
MenuItem: Menu.Item,
Submenu: Menu.Sub,
Message,
Modal,
Notice,
iOption: Option,
OptionGroup,
Page,
Panel: Collapse.Panel,
Poptip,
Progress,
Radio,
RadioGroup: Radio.Group,
Rate,
Row,
iSelect: Select,
Slider,
Spin,
Step: Steps.Step,
Steps,
Switch,
iTable: Table,
Tabs: Tabs,
TabPane: Tabs.Pane,
Tag,
Timeline,
TimelineItem: Timeline.Item,
TimePicker,
Tooltip,
Transfer,
Tree,
Upload
// Alert,
// BackTop,
// Badge,
// Breadcrumb,
// BreadcrumbItem: Breadcrumb.Item,
// iButton: Button,
// ButtonGroup: Button.Group,
// Card,
// Carousel,
// CarouselItem: Carousel.Item,
// Cascader,
// Checkbox,
// CheckboxGroup: Checkbox.Group,
// Circle,
// DatePicker,
// Dropdown,
// DropdownItem: Dropdown.Item,
// DropdownMenu: Dropdown.Menu,
// iForm: Form,
// FormItem: Form.Item,
// iCol: Col,
// Collapse,
// Icon,
// iInput: Input,
// InputNumber,
// LoadingBar,
// Menu,
// MenuGroup: Menu.Group,
// MenuItem: Menu.Item,
// Submenu: Menu.Sub,
// Message,
// Modal,
// Notice,
// iOption: Option,
// OptionGroup,
// Page,
// Panel: Collapse.Panel,
// Poptip,
// Progress,
// Radio,
// RadioGroup: Radio.Group,
// Rate,
// Row,
// iSelect: Select,
// Slider,
// Spin,
// Step: Steps.Step,
// Steps,
// Switch,
// iTable: Table,
// Tabs: Tabs,
// TabPane: Tabs.Pane,
// Tag,
// Timeline,
// TimelineItem: Timeline.Item,
// TimePicker,
// Tooltip,
// Transfer,
// Tree,
// Upload
};
const install = function (Vue, opts = {}) {
@ -118,10 +118,10 @@ const install = function (Vue, opts = {}) {
Vue.component(key, iview[key]);
});
Vue.prototype.$Loading = LoadingBar;
Vue.prototype.$Message = Message;
Vue.prototype.$Modal = Modal;
Vue.prototype.$Notice = Notice;
// Vue.prototype.$Loading = LoadingBar;
// Vue.prototype.$Message = Message;
// Vue.prototype.$Modal = Modal;
// Vue.prototype.$Notice = Notice;
};
// auto install