资讯专栏INFORMATION COLUMN

webpack配置

layman / 3167人阅读

摘要:告诉服务器从哪里提供内容。这只有在您想要提供静态文件时才需要。文件更改将触发整个页面重新加载。解决办法将卸载掉然后安装版本的,就可解决了此问题。

webpack.config.js
var webpack = require("webpack");
var HtmlWebpackPlugin = require("html-webpack-plugin");
var path = require("path");
module.exports={

entry: __dirname+"/main.js",
// {
//     index:__dirname+"/index.js",
//    main: __dirname+"/main.js"
// } ,
output:{
    path:__dirname+"/dist",
    filename:"[name].js"
},
module:{
    rules:[
        {
            test:/.vue$/,
            loader:"vue-loader"
        },
        {
            test:/.js$/,
            loader:"babel-loader",
            options:{
                "presets":[
                    "es2015"
                ]
            }
        },
        {
            test:/.css$/,
            use:[
            "style-loader",
            "css-loader"
            ]
        },{
            test:/.html$/,
            use:[
                "html-loader"
            ]
        },{
            test:/.png|.jpg|.gif$/,
            loader:"url-loader"
        }
    ]
},
devServer:{
    //告诉服务器从哪里提供内容。这只有在您想要提供静态文件时才需要。例如图片??
                    contentBase:path.join(__dirname + "dist"),
    // --告诉服务器观看由devServer.contentBase选项提供的文件。文件更改将触发整个页面重新加载。
                    watchContentBase: true,
                    // --随所有内容启用gzip压缩
                    compress: true,
                    // 模块的热加载,必须结合 HotModuleReplacementPlugin使用
    hot: true,  
                    port: 9999,
                    host: "localhost",
    inline:true,
                    //相当于gulp的middleware中间件拦截请求;
                    setup(app) {
                        app.get("/some/path", function(req, res) {
                            console.log(11)
                            res.json({ custom: "response" });
                        });
                    },
                    // proxy:{
                    //         // "/api": "http://localhost:3000/"
                    //         "/api": "http://localhost:9000"
                    //             //     "/api": {
                    //             //         target: "http://localhost:3000",
                    //             //         pathRewrite: {"^/api" : ""},
                    //             //         secure: false
                    //                 //     }
                    // }
    },

plugins:[

    new webpack.HotModuleReplacementPlugin(),
    // new webpack.optimize.UglifyJsPlugin(),
    new webpack.optimize.CommonsChunkPlugin({
        name: "commons",
        // ( 公共chunk(commnons chunk) 的名称)
        filename: "commons.js",
        // ( 公共chunk 的文件名)
    }),
    new HtmlWebpackPlugin({
        // filename: "test.html",
        template: "./index.html"
})
    ]
    

}

package.json
{
"name": "wlr",
"version": "1.0.0",
"description": "//生成文件npm run startr //启动服务,自动刷新npm run dev",
"main": "index.js",
"scripts": {

"test": "echo "Error: no test specified" && exit 1",
"start":"webpack --config webpack.config.js",
"dev": "webpack-dev-server --config webpack.config.js --open"

},
"author": "",
"license": "ISC",
"devDependencies": {

"babel": "^6.23.0",
"babel-core": "^6.26.0",
"babel-loader": "^7.1.2",
"babel-preset-es2015": "^6.24.1",
"css-loader": "^0.28.7",
"html-loader": "^0.5.1",
"html-webpack-plugin": "^2.30.1",
"style-loader": "^0.19.0",
"url-loader": "^0.6.2",
"vue-loader": "^13.3.0",
"webpack": "^3.8.1",
"webpack-dev-server": "^2.9.3"

}
}
遇见的问题
1.npm run dev 启动服务,报错

或者

报错原因:Webpack与webpack-dev-server版本不兼容导致。webpack是1.13.1,但webpack-dev-server是2.x以上的版本。
解决办法:将webpack-dev-server卸载掉:npm uninstall webpack-dev-server -g
然后安装1.15.0版本的webpack-dev-server,就可解决了此问题。:npm install webpack-dev-server@1.15.0 -g

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/90302.html

相关文章

  • TCM的webpack配置与常用插件

    摘要:中的配置热加载插件安装中的配置优化插件为组件分配,通过这个插件可以分析和优先考虑使用最多的模块,并为它们分配最小的压缩代码分离和文件 0 前言 本文是针对TCM项目所做的WebPack配置文件总结,主要概述了一些常用配置选项和插件使用,对以后的项目有指导意义。TCM的webpack配置文件包括webapck.config.base.js、webapck.config.dev.js、we...

    罗志环 评论0 收藏0
  • TCM的webpack配置与常用插件

    摘要:中的配置热加载插件安装中的配置优化插件为组件分配,通过这个插件可以分析和优先考虑使用最多的模块,并为它们分配最小的压缩代码分离和文件 0 前言 本文是针对TCM项目所做的WebPack配置文件总结,主要概述了一些常用配置选项和插件使用,对以后的项目有指导意义。TCM的webpack配置文件包括webapck.config.base.js、webapck.config.dev.js、we...

    张宪坤 评论0 收藏0
  • Webpack入门到精通(1)

    前言 什么是webpack 本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个 bundle。 webpack 有哪些功能(代码转换 文件优化 代码分割 模块合并 ...

    SunZhaopeng 评论0 收藏0
  • Webpack入门到精通(1)

    前言 什么是webpack 本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个 bundle。webpack 有哪些功能(代码转换 文件优化 代码分割 模块合并 自...

    wangbinke 评论0 收藏0
  • 基于webpack构建的angular 1.x 工程(一)webpack

    摘要:基于构建的工程一篇现在都已经出到的版本了,可我对它的认识还是停留在的版本。然后是写启动的命令行,也就是上面的这样写的意思是,当你输入你的命令名字就会让执行你对应命令的语句。我们首先把基本的配置引进来。 基于webpack构建的angular 1.x 工程(一)webpack篇   现在AngularJS都已经出到4.x的版本了,可我对它的认识还是停留在1.x的版本。   之前用它是为...

    Anleb 评论0 收藏0

发表评论

0条评论

layman

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<