Vue之webpack的安装与配置及其简单应用
一、文件结构

二、index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body> <!-- 在b.js中使用node的module.exports输出模块后,然后在a.js中使用require('./b')-->
<!-- 就可以实现a.js和b.js的数据共享了,也就不再需要引入b.js了 -->
<!-- 尽管如此,浏览器还是无法识别后端node语言,所以就需要webpack来实现 -->
<!-- webpack把node后端代码变成能让浏览器识别的前端语言,并且管理所有的依赖 -->
<!-- <script src="b.js"></script> -->
<!-- <script src="a.js"></script> --> <!-- 关于安装和配置webpack -->
<!--
一般使用局部安装(安装在某个项目内)
1. 初始化npm
npm init -y
生成package.json,npm就认为整个目录就是一个项目(模块)了 2. 用npm安装webpack
npm i webpack -D 或者 npm i webpack --save-dev
安装的webpack版本信息会在package.json中可以看到,表示安装成功
同时项目里会生成一个node_modules文件夹,其中目录下.bin/webpack 3.使用webpack来生成管理依赖的pack.js文件(文件名自定义即可)
a.首先将webpack的路径放进package.json的scripts属性里,
"scripts": {
//key可以自定义,在这里我使用pack来命名,会用于执行命令npm run pack
"pack":"node_modules/.bin/webpack"
},
b.在项目内创建webpack.config.js文件,并做以下设置
module.exports = {
// 入口文件,第一个依赖文件
entry:'./a', // 出口文件,文件名和存放路径(均可自定义)
//_dirname表示当前目录
output:{
filename:'pack.js',
path:__dirname
} c.引入pack.js文件
<script src="pack.js"></script> d.命令行终端使用以下命令生成pack.js文件
npm run pack e.在浏览器运行html文件 --> <!-- 其中a.js是第一个依赖,也就是入口文件。 pack.js是管理所有依赖的文件 -->
<!-- 最后只需要引入一个webpack生成的pack.js文件就可以了 -->
<script src="pack.js"></script> </body>
</html>
三、a.js
// 表示需要b.js文件里的msg变量
// var msg = require("./b").msg; // console.log("msg:",msg); // ES6新语法(注意:和上面node写法不能同时使用,否则报错!)
import {newMsg} from './b'; console.log("newMsg:",newMsg);
四、b.js
var msg = 'Yo.';
var newMsg = 1; // 输出模块,其中这个模块对象里有一个msg属性,其值就是变量msg
//依赖b.js的a.js使用require('./b').msg来进行调用msg变量
// module.exports = {msg:msg}; // ES6新语法(注意:和上面node写法不能同时使用,否则报错!)
export {newMsg};
五、webpack.config.js
module.exports = {
// 入口文件,第一个依赖文件
entry:'./a',
// 出口文件,文件名和存放路径
output:{
filename:'pack.js',
path:__dirname
}
}
六、浏览器运行效果

七、谢谢观看,如有问题,欢迎交流
Vue之webpack的安装与配置及其简单应用的更多相关文章
- 开源IDE CodeBlocks的下载安装、配置、简单编程
如果没有集成开发环境(IDE),在linux下开发程序将非常繁琐,IDE是指将编辑.编译.调试等功能集成在一个桌面环境上,这样就大大方便了用户.IDE一般包括代码编辑器.编译器.调试器和图形界面用户工 ...
- CodeBlocks的下载安装、配置、简单编程
CodeBlocks的下载安装.配置.简单编程 IDE简介 http://www.baidu.com/s?wd=codeblocks ,这里只是介绍Windows平台下的IDE环境配置. CodeBl ...
- idea npm vue java开发工具安装 环境配置
感谢此链接内容作者,从前往后流程较完整详细,助我成功配置好(不知道在这之前做的一些尝试有没有影响) https://blog.csdn.net/qq_42564846/article/details/ ...
- Vue学习笔记-VSCode安装与配置
一 使用环境: windows 7 64位操作系统 二 VSCode安装与配置 1.下载: https://code.visualstudio.com 直接点击即可. 2. 点击按装程序,默认安 ...
- C# 日志输出工具库—log4net 安装、配置及简单应用
1.下载和安装 注意每次安装只是安装到本项目中,换了另一个项目需要再次安装和配置. 我使用的是Visual Studio 2013 社区版,在tools中找到NuGet包管理. 搜索log4net并点 ...
- Webpack的安装、配置与执行
先用npm安装 npm install webpack -g 然后在项目路径下进行项目安装 npm init # 会自动生成一个package.json文件 npm install webpack - ...
- webpack的安装个配置
webpack在node下运行,首先先安装node 安装在全局:npm install webpack -g 在任何目录都可以运行 安装在局部:npm init -y npm install webp ...
- phpRedis安装、配置及简单使用
安装phpRedis前,请先安装Redis,再安装phpRedis插件. 1.下载安装 在linux服务器上,命令行执行以下命令(cd ./usr local/src 一般源码放在这里(推荐源码安装) ...
- nginx安装及配置为简单的文件服务器
centos 6.5 直接yum安装即可 yum install nginx -y 配置文件位于:/etc/nginx/nginx.conf,里面可以修改处理器数量.日志路径.pid文件路径等,默认的 ...
随机推荐
- js数组求交集
求两个数组的交集 var arr1 = [1,2,3]; var arr2 = [2,3,4]; var arr3; arr3 = arr1.filter(function(num) { return ...
- 推荐一个好用的git图形化工具
之前一直用的是SmartGit,虽然贼好用,但是是收费的. 现在看到了一款免费也非常炫酷的工具,忍不住强烈推荐一下GitKraken rebase,cherry pick啥的用挺好用
- CMake学习笔记五-依赖库添加
# # 项目名称 # SET(WIS_PROJECT_NAME EXAMPLE) # dependencies SET(DEPENDENCIES #依赖第三方库 ) #Qt模块 SET(QT_MODU ...
- 【JZOJ4745】【NOIP2016提高A组模拟9.3】看电影
题目描述 听说NOIP2016大家都考得不错,于是CCF奖励省常中了 K 张变形金刚5的电影票奖励OI队的同学去看电影.可是省常中OI队的同学们共有 N(N >= K)人.于是机智的你想到了一个 ...
- Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第二十二章:四元数(QUATERNIONS)
原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第二十二章:四元数(QUATERNIONS) 学习目标 回顾复数,以及 ...
- 如何写JavaScript中的callback回调函数
如何写回调函数? 如果自己在写一个方法或函数,你有可能会遇到需要一个回调函数.下面就是一个简单的常见回调函数例子: function mySandwich(param1, param2, callba ...
- python 类(class)
- 封装好的MySQL.class.php类
封装好的MySQL.class.php类 作用:数据库操作类 <?php header('content-type:text/html;charset=utf-8'); class MySQLD ...
- 集合--List&&ArrayList-LinkedList
1.8新特性 List接口中的replaceAll()方法,替换指定的元素,函数式接口编程 List 元素是有序的并且可以重复 四种add();方法 ArrayList(用于查询操作),底层是数组 ...
- ios开发――解决UICollectionView的cell间距与设置不符问题
在用UICollectionView展示数据时,有时我们希望将cell的间距调成一个我们想要的值,然后查API可以看到有这么一个属性: - (CGFloat)minimumInteritemSpaci ...