webpack -w
打包的时候没问题,一切正常;webpack -p
打包后事件触发不了了。
父组件:
<template lang='jade'>
.wrapper.guest-home-wrapper(
:style='bgImg'
)
a.btn
a.btn-rule(
@click='dialogToggle = true',
) 活动规则
common-dialog(
v-if='dialogToggle',
@closeDialog='toggle',
)
</template>
<script lang='babel'>
import CommonDialog from '../common/dialog.vue';
export default {
components: {
CommonDialog,
},
data() {
return {
bgImg: {
backgroundImage: `url(/src/images/bg_start.png)`
},
dialogToggle: false,
}
},
methods: {
toggle() {
this.dialogToggle = false;
}
}
}
</script>
子组件:
<template lang='jade'>
.dialog
section.content
p 1.活动时间:2017年1月1日—2018年1月1日
.mask(
@click='toggle'
)
</template>
<script lang='babel'>
export default {
methods: {
toggle() {
this.$emit('closeDialog');
}
}
}
</script>
webpack
配置文件:
// 将 CSS 打包成一个独立的文件
const ExtractTextPlugin = require('extract-text-webpack-plugin');
module.exports = {
// 项目入口文件
entry: './src/guest.config.js',
// 编译后文件输出路径及文件名
output: {
path: __dirname,
filename: './webapp/dist/js/guest.js'
},
module: {
loaders: [{
test: /\.vue$/,
loader: 'vue',
},
{
test: /\.js$/,
loader: 'babel',
},
{
test: /\.css$/,
loader: ExtractTextPlugin.extract('style-loader', 'css-loader'),
},
{
test: /\.scss$/,
loader: ExtractTextPlugin.extract('style-loader', 'css-loader!sass-loader'),
}],
},
vue: {
loaders: {
sass: ExtractTextPlugin.extract('vue-style-loader', 'css-loader!sass-loader'),
},
},
plugins: [
new ExtractTextPlugin('./webapp/dist/css/guest.css', {
allChunks: true,
}),
],
};
webpack -p是代码压缩了么?webpackconfig.js 是怎么配置的,不执行控制台报错了没,不知道不是你代码压缩影响的不