From ff827b1f4757843904a8df55813bf2e75b556b88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=96=9B=E5=AE=9A=E8=B0=94=E7=9A=84=E7=8C=AB?= Date: Mon, 27 Mar 2017 11:29:50 +0800 Subject: [PATCH 1/3] update: support-ts --- template/build/webpack.base.conf.js | 12 ++++++++++-- template/package.json | 2 ++ template/src/App.vue | 2 +- template/src/components/Hello.vue | 2 +- template/src/{main.js => main.ts} | 0 template/tsconfig.json | 14 ++++++++++++++ 6 files changed, 28 insertions(+), 4 deletions(-) rename template/src/{main.js => main.ts} (100%) create mode 100644 template/tsconfig.json diff --git a/template/build/webpack.base.conf.js b/template/build/webpack.base.conf.js index 0f161198d4..c319cf9cd8 100644 --- a/template/build/webpack.base.conf.js +++ b/template/build/webpack.base.conf.js @@ -9,7 +9,7 @@ function resolve (dir) { module.exports = { entry: { - app: './src/main.js' + app: './src/main.ts' }, output: { path: config.build.assetsRoot, @@ -19,7 +19,7 @@ module.exports = { : config.dev.assetsPublicPath }, resolve: { - extensions: ['.js', '.vue', '.json'], + extensions: ['.js', '.vue', '.json', '.ts'], alias: { {{#if_eq build "standalone"}} 'vue$': 'vue/dist/vue.esm.js', @@ -45,6 +45,14 @@ module.exports = { loader: 'vue-loader', options: vueLoaderConfig }, + { + test: /\.ts$/, + loader: 'ts-loader', + include: [resolve('src'), resolve('test')], + options: { + appendTsSuffixTo: [/\.vue$/] + } + }, { test: /\.js$/, loader: 'babel-loader', diff --git a/template/package.json b/template/package.json index 5c420a2a93..8335a60b14 100644 --- a/template/package.json +++ b/template/package.json @@ -90,6 +90,8 @@ "vue-loader": "^11.1.4", "vue-style-loader": "^2.0.0", "vue-template-compiler": "^2.2.4", + "ts-loader": "^2.0.3", + "typescript": "^2.2.1", "webpack": "^2.2.1", "webpack-dev-middleware": "^1.10.0", "webpack-hot-middleware": "^2.16.1", diff --git a/template/src/App.vue b/template/src/App.vue index 74a25d1dfa..6f93704985 100644 --- a/template/src/App.vue +++ b/template/src/App.vue @@ -9,7 +9,7 @@ -