【vue-06】webpack npm
什么是Webpack
Webpack
是一款模块加载器兼打包工具,他能把各种资源,比如js
,css
,less
转化成一个静态文件,减少页面的请求,提高效率。
安装Webpack
在安装webpack之前,我们需要先了解一下nodejs,并且安装nodejs
Nodejs
什么是Node.js
(1)之前学过java,运行java需要安装的jdk环境
学习的这个Node.js,是JavaScript的运行环境,用于执行Javascript代码环境
不需要浏览器,直接使用node.js运行Jasvascript代码
(2)模拟服务器效果,比如tomcat
安装Node.js
安装nodejs,去官网,一路next安装
确定nodejs是否安装成功
cmd输入node -v
,查看是否正确打印出版本号
E:\>node -v
v12.18.2
使用例子
使用nodejs执行javascript代码
服务器端应用开发
const http = require('http');
http.createServer(function (request, response) {
// 发送 HTTP 头部
// HTTP 状态值: 200 : OK
// 内容类型: text/plain
response.writeHead(200, {'Content-Type': 'text/plain'});
// 发送响应数据 "Hello World"
response.end('Hello Server');
}).listen(8888);
// 终端打印如下信息
console.log('Server running at http://127.0.0.1:8888/');
NPM
什么是NPM
(1)在后端开发中,使用过maven,maven构建项目,管理下载jar依赖
npm类似于maven,用在前端中,管理前端js依赖。联网下载js依赖,比如JQuery
安装NPM
在安装nodejs的时候,会随便把npm一起安装
#查看版本
E:\>npm -v
6.14.5
npm具体操作
npm项目初始化操作
npm init
npm -init -y
使用的都是默认值,就不需要去输入回车确定
#name: 项目名称
#version: 项目版本号
#description: 项目描述
#keywords: {Array}关键词,便于用户搜索到我们的项目
#最后会生成package.json文件,这个是包的配置文件,相当于maven的pom.xml
npm下载js依赖
修改npm镜像
//切换镜像安装一下nrm
npm config set registry http://registry.npm.taobao.org
//安装nrm
npm install -g nrm
//查看镜像列表
nrm ls
//切换镜像
nrm use taobao
如果在执行nrm ls
报错,参考链接:https://blog.csdn.net/S_aitama/article/details/113706339
当我们修改好镜像之后,就可以进行下载了,比如JQuery
进入到项目的目录中,然后install
也可以根据package.json文件下载依赖
npm install
分析和安装完nodejs和npm,我们继续回到webpack
注意:webpack-cli的横线之间不要有空格,不然在测试的时候输入:webpack -v会显示如下
(base) D:\Project\vue\vue-second\myvue>webpack -v
One CLI for webpack must be installed. These are recommended choices, delivered as separate packages:
- webpack-cli (https://github.com/webpack/webpack-cli)
The original webpack full-featured CLI.
We will use "npm" to install the CLI via "npm install -D".
Do you want to install 'webpack-cli' (yes/no):
npm install webpack -g
npm install webpack-cli -g
#测试安装成功:
webpack -v
webpack-cli -v
使用webpack
- 创建项目(即新建文件夹,用idea打开)
- 编写js
如果是js的话,可以省略 .js ,如果是css不可以省略 .css,而且也要安装css加载器
npm install --save-dev style-loader css-loader
3.添加配置文件(和src目录同级) webpack.config.js(文件名不能变)
const path = require("path"); //Node.js内置模块
module.exports = {
//配置js
entry: './src/index.js', //配置入口文件
output: {
path: path.resolve(__dirname, './dist'), //输出路径,__dirname:当前文件所在路,径
filename: 'bundle.js' //输出文件
},
//配置css
output:{},
module: {
rules: [
{
test: /\.css$/, //打包规则应用到以css结尾的文件上
use: ['style-loader', 'css-loader']
}
]
}
}
- 打包
输入webpack
,你会发现在项目中会多一个文件夹dist
- 在html中引入包
【vue-06】webpack npm的更多相关文章
- 【vue iview】项目 win10 放在C盘 经常npm install不成功,就是因为 权限问题,把代码目录放到D盘就没事了。
[vue iview]项目 win10 放在C盘 经常npm install不成功,就是因为 权限问题,把代码目录放到D盘就没事了.
- 【vue知识点】1)vue生命周期
[vue知识点]2)vue登录认证
- 【Vue.js】代码优化:在dom中加一行v-if就可少写一个循环类方法
[问题描述] 把当前用户的购物车中(cartList),商品(good)选中字段checked = true的商品在订单页面中进行展示出来. [一般做法](两次循环) 首先取出当前用户的购物车列表,循 ...
- 【前端工具】nodejs+npm+vue 安装(windows)
预备 先看看这几个是干嘛的,相互的关系是啥. nodejs是语言,类比到php. npm是个包管理,类比到composer. vue是个框架,类比到laravel. webpack是个打包工具. 先下 ...
- 【vue环境】vue : 无法加载文件 C:\Users\1111111\AppData\Roaming\npm\vue.ps1,因为在此系统禁止运行脚本
在用脚手架搭建vue项目时,提示:无法加载文件 C:\Users\1111111\AppData\Roaming\npm\vue.ps1,因为在此系统禁止运行脚本 这是你笔记本禁止运行脚本,解决办法 ...
- 【vue入门】日志demo,增删改查的练习(无vuex版本)
安装 1. 确定电脑已装node和npm 出现版本号则说明电脑已经安装好node和npm2. 创建一个基于webpack的项目 3. 在项目里安装依赖 4. 运行 配置路由为了动态渲染各个页面的组 ...
- 【Vue 入门】使用 Vue2 开发一个展示项目列表的应用
前言 一直没有找到一个合适的展示个人项目的模板,所以自己动手使用 Vue 写了一个.该模板基于 Markdown 文件进行配置,只需要按一定规则编写 Markdown 文件,然后使用一个 在线工具 转 ...
- 【vue学习】vue 2.0版本以上创建项目的的步骤
一.环境准备 1.vue项目依赖 node.js npm,需要先安装node和npm,先检查本地是否安装node.npm 快捷键win+r 输入cmd 弹出操作框,如果电脑已经安装git,直接右 ...
- 【vue.js】windows下安装vue.js
windows下搭建vue开发环境 Vue.js是一套构建用户界面的 “渐进式框架”.与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计.Vue 的核心库只关注视图层,并且非常容易学习,非常 ...
随机推荐
- 2019 GDUT Rating Contest I : Problem A. The Bucket List
题面: A. The Bucket List Input file: standard input Output file: standard output Time limit: 1 second Me ...
- golang 实现两数组对应元素相除
func ArrayDivision(arr1 []float64,arr2 []float64) (arr3 []float64) { //两数组对应元素相除 for p:=0;p< len( ...
- python实现顺序表
python实现顺序表可以有两中形式进行存储 列表 元组 其实简单来说,顺序表无非就是操作列表和元组的方法来对顺序表进行操作. 实例代码 7 class SqList: 8 def __init__( ...
- python3 list合并
1 t1=[x for x in range(5)] 2 t2=[x for x in range(5,10)] 3 4 #way1:通过方法extend(),直接修改列表,无返回值 5 # t1.e ...
- 当红开发语言Go,真的是未来的技术主流吗?
摘要:文将详细介绍 Golang 的语言特点以及它的优缺点和适用场景,带着上述几个疑问,为读者分析 Go 语言的各个方面,以帮助初入 IT 行业的程序员以及对 Go 感兴趣的开发者进一步了解这个热门语 ...
- 封装Vue纵向表头左右结构的table表格
我们前端开发人员在使用表格的过程中,大概率碰到的都是表格头部在表格的最上边,然后呈一行展示,紧接着就是表格的每一行的每一个单元格来展示具体内容的场景,很少会遇到表格的头部呈纵向一行展示,也就是说表格的 ...
- Web安全(更新中)
sql注入 创建一个数据库 create database admin1; 查询数据库 查看所有数据库 show databases; 使用该数据库 use admin1; 创建一个表 创建一个 ...
- 《环形队列》游戏高《TPS》模式下减少cpu线程切换
序言 什么高TPS?QPS,其实很多人都知道,还有人说大数据,大流量这些关键词夜以继日的出现在我们眼前: 针对高TPS,QPS这些词汇还有一个次可能比较陌生那就是CCU,tps,qps接受满天飞,CC ...
- kubernetes中有状态应用的优雅缩容
将有状态的应用程序部署到Kubernetes是棘手的. StatefulSet使它变得容易得多,但是它们仍然不能解决所有问题.最大的挑战之一是如何缩小StatefulSet而不将数据留在断开连接的Pe ...
- 18. vue-router案例-tabBar导航
目标: 做一个导航tabbar 一. 分析 我们的目标是做一个导航tabbar, 要求 这个导航不仅可以在一个页面使用, 可以在多个页面通用 每个页面的样式可能不一样 每个页面的图标, 文字可能不一样 ...