誰かが何らかの光を当てると大変感謝してくれることでしょう。Gulp、Vue、Webpack、Babel、Uncaught SyntaxError:予期せぬトークンのインポート
Webpackを使用してVueと同様にES6ファイルで作業するための環境を設定しようとしています。
私はすべての依存関係をインストールして、以下のファイルを作成しました:
webpack.config.js
module.exports = {
entry: './resources/assets/source/js/app.js',
output: {
filename: 'app.js'
},
devtool: 'source-map',
resolve: {
alias: {
'vue$': 'vue/dist/vue.js'
}
},
module: {
loaders: [
{
test: /\.js$/,
loader: 'babel',
exclude: /node_modules/,
query: {
presets: ['es2015']
}
},
{
test: /\.vue$/,
loader: 'vue'
}
]
}
};
gulpfile.js
var gulp = require('gulp'),
webpack = require('webpack-stream');
gulp.task('script',() => {
"use strict";
return gulp.src('./resources/assets/source/js/app.js')
.pipe(webpack(require('./webpack.config.js')))
.pipe(gulp.dest('./public/assets/js/'));
});
gulp.task('default', ['script']);
リソースを/ assets/source/js/app.js
var Vue = require('vue');
import Alert from './components/Alert.vue';
new Vue({
el: '#app',
components: { Alert },
ready() {
alert('ready');
}
});
リソース/資産/ソース/ JS /コンポーネント/ Iは、gulp
すべてがバンドルされ、コンパイルされたラングが、私は、ブラウザでそれを実行したとき、私はUncaught SyntaxError: Unexpected token import
を得るAlert.vue
<template>
<div :class="alertClasses" v-show="show">
<slot></slot>
<span class="Alert__close" @click="show == false">x</span>
</div>
</template>
<script>
export default {
props: ['type'],
data() {
return {
show: true
};
},
computed: {
alertClasses() {
var type = this.type;
return {
'Alert': true,
'Alert--Success': type == 'success',
'Alert--Error': type == 'error'
};
}
}
};
</script>
resources/assets/source/js/app.js
ファイル内の行を指しています。
何が原因なのか理解しようとしてから、アイデアが足りなくなり、あきらめてしまったので、助けていただければ幸いです。
BabelとWebpackのどちらのバージョンを使用していますか? – Aurora0001
その[email protected]と[email protected] –
'/ \。(js | vue)$/''から引用符を削除してみてください。正規表現としてそれをしたい。 – Aurora0001