1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
| const { Configuration } = require("webpack") const path = require("path") const htmlWebpackPlugin = require("html-webpack-plugin") const { VueLoaderPlugin } = require("vue-loader/dist/index") const { CleanWebpackPlugin } = require("clean-webpack-plugin") const FriendlyErrorsWebpackPlugin = require("friendly-errors-webpack-plugin")
const config = { mode: "development", entry: "./src/main.ts", module: { rules: [ { test: /\.vue$/, use: "vue-loader" }, { test: /\.scss$/, use: ["style-loader","css-loader","sass-loader"] }, { test: /\.css$/, use: ["style-loader","css-loader"] }, { test: /\.ts$/, loader: "ts-loader", options: { configFile: path.resolve(process.cwd(),"tsconfig.json"), appendTsSuffixTo:[/\.vue$/] } } ] }, output: { filename: "[hash].js", path: path.resolve(__dirname, "dist"), clean: true }, resolve: { alias: { "@": path.resolve(__dirname,"src") }, extensions: [".vue",".ts",".js"] }, stats: "errors-only", devServer: { proxy: {}, port: 11451, hot: true, open: true }, plugins: [ new htmlWebpackPlugin({ template: "./public/index.html" }), new VueLoaderPlugin(), new CleanWebpackPlugin(), new FriendlyErrorsWebpackPlugin({ compilationSuccessInfo: { messages: ["Your application is running!"] } }) ], externals: { vue: "Vue" } }
module.exports = config
|