一、webpack那点事-安装、环境搭建

前言:

还记得两年前刚来公司才几个月,经理就安排我去做JS地图相关的维护和开发工作,然后就跟着一个公司老鸟(没俩月他离职了)熟悉地图相关的功能。

本人嘛,那会前端JS实际开发经验也才几个月,然后当我看见公司地图的上万行源代码,可想而知,直接懵逼。但是没办法呀,只能坚持去慢慢看,来来回回的找引用关系,熟悉每个模块方法实现的功能,于是乎,从那之后,我感觉什么一两千行代码都是 so easy。

言归正传,正是在于这种情况下,在业务复杂的时候,相对应的代码量会很多,上万行的代码也不再是梦,但是这种情况下,在后期维护的过程中,是很不方便的,因此在最近尝试新版本的开发,采用webpack进行打包发布

webpack介绍:在开发过程中,我们可以利用模块化开发(CMD模式),将一个大型的功能按不同的小功能,拆分成不同的模块(文件),这样在以后的维护中,我们可以针对不同的功能进行维护,不至于在一个上万行的文件中,找来找去,而且当一个文件很大的时候,电脑不好的在查看,修改的时候会很卡,也不利于工作效率,因此产生了模块化开发这个概念;而webpack正是将模块化进行打包发布处理的一个工具

常见模块化开发规范:CMD(seaJS)  AMD(requireJS...)

一、webpack环境搭建1.webpack安装

首先需要安装nodeJS,先在nodeJS官网下载,进行NodeJS安装

下载地址   https://nodejs.org/en/download/

下载完毕后,进行安装,一切都以默认的选择即可

2.npm安装

安装完毕后,打开cmd工具,输入命令

npm  install  --save  mocha

等待安装完毕

3.webpack安装

cmd工具中,输入命令

npm  install  webpack  -g

执行命令安装webpack

到此webpack安装完毕,可以使用

webpack -h

来查看版本号

到此,webpack安装完成

二、webpack打包

1. 打开cmd工具,进入你的开发文件夹,其中此文件夹必须包含webpack.config.js文件,config配置参考如下

var webpack = require("webpack")
module.exports = {
    entry: {
        "mcDemoMain": "./mcDemoMain.js"//直接require进来的文件会直接打包到这个文件中,如require(‘./common/Enum‘),延迟加载的文件则不会,如require("bundle?lazy&name=demo!./demo/demo1")
    },
    output: {
        path: "../../dist/demo/1.0",//设置打包后的js的输出位置
        filename: "[name].js",//和入口文件的名字相同
        chunkFilename: "[name].young.js",//值模块里需要单独打包的文件  require.ensure
        //path: path.join(__dirname, ‘static/js/app/dist‘),  //设置打包后的js的输出位置
        //filename: "[name].[hash].js",  //和入口文件的名字相同
        publicPath: "[sDomain]static/dist/demo/1.0/" //浏览器会从这个目录开始查找模块
    },
    module: {
        loaders: [
          //{ test: /\.css$/, loader: "style!css" },
          //{ test: /\.js[x]?$/, exclude: /node_modules/, loader: ‘babel-loader‘, query: { presets: ‘es2015‘ } },
        ]
    },
    plugins: [
        new webpack.BannerPlugin(‘文件顶部注释说明‘),
       // new webpack.IgnorePlugin(/\.\/AsnyModuleA.js$/),//排除不想打包进去的插件
        //new webpack.ProvidePlugin({ //这是把jquery挂到全局上,不用每个模块都去require
        //    "AsnyModuleA": ‘../../../dist/demo/AsnyModuleA.js‘,
        //}),
        //new webpack.optimize.CommonsChunkPlugin(‘common.js‘) //有多个入口文件的话提取公共部分,利用浏览器缓存 然后 commonsPlugin 可以用于分析模块的共用代码, 单独打一个包出来:
    ]
    , resolve: {
        //modulesDirectories: ‘C:\Users\Administrator\AppData\Roaming\npm\node_modules‘,//["C:\Users\Administrator\AppData\Roaming\npm\node_modules"],
        //root: ‘C:\Users\Administrator\AppData\Roaming\npm\node_modules‘,
        alias: {
            //jquery: path.join(__dirname, ‘dev/jquery/jquery.js‘),
            //AsnyModuleA: "../../../dist/demo/start/commom/AsnyModuleA.js", //在正常情况下我们以CommonJS风格引用avalon,以require(‘avalon‘)
            //‘../avalon‘: path.join(__dirname, ‘dev/avalon/avalon.js‘)//由于oniui都以是../avalon来引用avalon的,需要在这里进行别名
        }
    },
    //externals: {
    //    ‘AsnyModuleA‘: ‘AsnyModuleA‘
    //}
}

2.cmd进入开发目录后,输入

webpack

就可以进行打包了,如果显示以下则表示成功

注明:

sDomain为动态URL路径地址,下次更新sDomain动态路径配置的问题

【原创文章,转载请尊重原作者】
时间: 2024-10-17 20:03:18

一、webpack那点事-安装、环境搭建的相关文章

phonegap安装 环境搭建与配置详解

首先介绍搭建环境的基本准备: 1 java JDK   (搜索一下.......) 2 android SDK 最新版(我当时的版本是 API 19  点击打开链接) 3 Ant 打包工具  (百度一个或者 点击打开链接) 4 eclipse   (建议使用google的  因为内置ADT     点击打开链接 ) 5 ADT (ecplise 里的插件,安卓开发工具插件     下载上面的链接,内部集成了ADT) 6 Node.js   (点击打开链接) 7 sublime  点击打开链接 ;

win10 , JAVA安装 环境搭建

一.关于下载地址及方式: 1.百度搜索JDK,进入下载官网,具体网址如下: click me!!! 2.根据你电脑的不同系统选择对应的下载,当然首先你要点击Accept License Agreement 同意此进行! 3.下载完成后,点击安装 二.关于安装过程: 1.选择安装路径时,注意该路径不能包含中文名 这里我们可以通过"更改"选择自己想要安装到的目录,然后点击下一步即可. 到这里我们只安装了jdk,安装向导会检查到你未安装jre,然后提示你安装jre,建议最好装上. 2.安装J

【Spark机器学习速成宝典】基础篇01Windows下spark开发环境搭建+sbt+idea(Scala版)

注意: spark用2.1.1 scala用2.11.11 材料准备 spark安装包 JDK 8 IDEA开发工具 scala 2.11.8 (注:spark2.1.0环境于scala2.11环境开发,所以必须版本对应 scala不是必须安装的,如果你是打算使用scala进行spark开发,则需要安装 环境搭建步骤 将spark-2.1.1-bin-hadoop2.x版本至c盘下即可 将spark中的jar包全部提取出来另外放到一地方用于进行开发 新建IDEA项目,将所有jar包导入到IDEA

验证那些事--环境搭建与软件安装

IC验证工程师,工作主要是根据芯片规格和特点设计并实现验证环境;根据芯片或模块的规格,利用已实现的验证环境进行验证和回归. 验证环境:虚拟机+Ubuntu 验证软件:cadence +synopsys 本文主要将个人学习时验证环境搭建及验证所用的软件安装. 一:验证工程必须具备的能力      以军哥任职的第一家公司验证工程师的招聘简介为例子,知道了那些是验证工程师必备的技能,然后抓紧时间学习吧! 二:虚拟机安装 几乎所有的验证工作都是在Linux系统中完成,因此虚拟机和Linux系统必不可少,

webpack+babel+ES6+react环境搭建

webpack+babel+ES6+react环境搭建 步骤: 1 创建项目结构 注意: 先创建一个项目目录  react  这个名字自定义,然后进入到这个目录下面 mkdir app //创建app目录 用来存放项目源文件 mkdir dist // 创建dist目录 用来存放打包好的文件 touch .gitignore //创建.gitignore 用来添加git 忽略的文件 touch webpack.config.js //创建webpack的配置文件 cd app //进入到app目

分布式实时日志系统(一)环境搭建之 Jstorm 集群搭建过程/Jstorm集群一键安装部署

最近公司业务数据量越来越大,以前的基于消息队列的日志系统越来越难以满足目前的业务量,表现为消息积压,日志延迟,日志存储日期过短,所以,我们开始着手要重新设计这块,业界已经有了比较成熟的流程,即基于流式处理,采用 flume 收集日志,发送到 kafka 队列做缓冲,storm 分布式实时框架进行消费处理,短期数据落地到 hbase.mongo中,长期数据进入 hadoop 中存储. 接下来打算将这其间所遇到的问题.学习到的知识记录整理下,作为备忘,作为分享,带给需要的人. 淘宝开源了许多产品组件

Vue.js开发环境搭建(安装过程遇到的问题)

网络上关于Vue.js的安装过程有很多介绍,这里不多赘述,这里只是记录自己安装过程和遇到的问题 1 首先安装node.js 到官网下载node.js安装包,安装过程和一般软件没有区别.安装完成后到终端查看版本号,若如下图所示,表示安装成功. 2.node.js环境变量新建 其实安装完node,就自动在path里增加环境变量,但是为了以后的本地部署项目,我们需要找到node.js的安装根目录,在当中新建"node_global"和"node_cache"两个文件夹.

React+Webpack+ES6环境搭建(自定义框架)

引言 目前React前端框架是今年最火的.而基于React的React Native也迅速发展.React有其独特的组件化功能与JSX的新语法,帮助前端设计有了更好的设计与便捷,而React Native更是扩大了前端的边界. 说道React,那就不得不说一下Webpack凭借它异步加载和可分离打包等优秀的特性,走在取代Grunt和Gulp的路上.而面向未来的ES6,更是支持模块化处理. 下面我就分享一下关于Webpack+React+ES6的环境搭建(通用)[附加发布版] 准备工作 首先需要准

Vue.js 运行环境搭建详解(基于windows的手把手安装教学)及vue、node基础知识普及

Vue.js 是一套构建用户界面的渐进式框架.他自身不是一个全能框架——只聚焦于视图层.因此它非常容易学习,非常容易与其它库或已有项目整合.在与相关工具和支持库一起使用时,Vue.js 也能完美地驱动复杂的单页应用. 在配置环境之前呢,有些基础的东西还是要和大家普及一下的.如果你已经对Vue.js有所了解,那请点击 配置步骤  跳转到配置环境的阅读,否则,请耐心看完看完. 首先,介绍一下Vue.js的概念,他是干啥的呢?一定要配置vue的运行环境吗? 如上述Vue.js不是个全能的框架,因为他的