vue教程3-webpack搭建项目
vue-cli
https://cli.vuejs.org/zh/
vue-cli是vue的命令行工具,对于创建项目,安装各种组件,运行项目都极为方便,是在开发vue中的必备工具
vue-cli基于nodejs,所以要先安装nodejs。从nodejs官网下载二进制包,然后把nodejs的bin目录加到系统PATH,这样就由全局的npm命令可以调用了。
npm install -g @vue/cli
#安装vue-cli
npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm install @vue/cli -g
#或者用淘宝源
# vue --version
3.6.2
#安装完后,出现vue命令
vue init
搭建项目的第一步就是初始化目录,需要使用init,先安装
cnpm install -g @vue/cli-init
webpack
webpack是一个模块加载和打包工具,通过使用CommonJS语法把所有浏览器需要的静态资源做相应的准备,比如合并、打包。
它有loader和plugin机制。
loader用于载入各样静态资源,不只是js脚本,还有css-loader,style-loader
plugin对整个流程进行控制。
vue中也有vue-loader,用于把.vue文件转换成webpack包,和整个打包过程融合起来。
如果在本地创建一个简易项目时,一般使用webpack
git地址:https://github.com/vuejs-templates/webpack
使用webpack创建一个名为vue-test的项目
cnpm install -g @vue/cli-init
vue init webpack vue-test
cd vue-test/
npm run dev
#安装init包,
#初始化一个环境,取名vue-test,es,unit test,e2e包先不装,其他选项默认
#运行环境,然后就会由node起一个服务 -->
DONE Compiled successfully in 4722ms I Your application is running here: http://localhost:8081
webpack-simple项目目录
webpack初始化的项目东西还是不少的,这里初始化一个webpack-simple,这个项目模板十分适合初学。
├─.babelrc // babel配置文件
├─.gitignore
├─index.html // 主页
├─package.json // 项目配置文件
├─README.md
├─webpack.config.js // webpack配置文件
├─dist // 发布目录
│ ├─.gitkeep
├─src // 开发目录
│ ├─App.vue // App.vue组件
│ ├─main.js // 预编译入口
package.json是vue项目的依赖管理文件,运行npm install时,就会安装这里的包
webpack.config.js是编译配置文件,采用了CommonJS的写法,entry节点配置了编译入口,output节点配置了输出
var path = require('path')
var webpack = require('webpack')
module.exports = {
entry: './src/main.js',
output: {
path: path.resolve(__dirname, './dist'),
publicPath: '/dist/',
filename: 'build.js'
},
...
}
#这段entry和output配置的含义是:编译src/main.js文件,然后输出到dist/build.js文件。
#,执行npm run dev命令后,使用开发环境的话,在dist目录下不会生成build.js文件,开发环境下build.js是在运行内存中的
npm run dev
#运行开发者环境,不会生成dist/build.js
#开发者环境,nodejs会自己起一个web服务
npm run build
#运行生产环境,生成dist/build.js和压缩文件build.js.map
#生产环境,需要服务器提供nginx这样的http服务
webpack项目目录
初始化一个webpack项目模板,目录结构更复杂些。
在simple中,只有一个单一的App.vue,所有功能都在这里面。在webpack中,src目录下有了components目录,布局组件放在其中。
build后,dist目录下,把所有静态资源做了整合。

自动渲染
在dev环境下,webpack会监听src目录下的改动,有改动就会重新渲染
如果改了build和config的内容,则要手动重启node。
vue教程3-webpack搭建项目的更多相关文章
- vue-cli+ webpack 搭建项目todolist
本文接着之前的todolist例子,通过vue-cli + webpack 搭建项目:针对于vue-cli 2.x版本,更高版本找官网https://cli.vuejs.org/guide/insta ...
- 《后端也要懂一点前端系列》使用webpack搭建项目
今天突然有兴致想要学习一下前端的技术,所以特此记录学习前端之路.由于之前在公司做的项目大部分都是关于JSP页面的增删改查,所以前端后端都是一个人来写的,对于前端还只是停留在js.html.css阶段, ...
- 使用vue-cli(vue脚手架)快速搭建项目
vue-cli 是一个官方发布 vue.js 项目脚手架,使用 vue-cli 可以快速创建 vue 项目.这篇文章将会从实操的角度,介绍整个搭建的过程. 1. 避坑前言 其实这次使用vue-cli的 ...
- vue cli4.0 快速搭建项目详解
搭建项目之前,请确认好你自己已经安装过node, npm, vue cli.没安装的可以参考下面的链接安装. 如何安装node? 安装好node默认已经安装好npm了,所以不用单独安装了. 如何安装v ...
- vue+webpack搭建项目
1.全局安装node.js 2.安装vue-cli 可以在项目目录安装 npm install -g vue-cli 使用vue-list命令选择webpack模板 vue init webpack ...
- vue零基础学习--搭建项目
一.script引入(联系使用,小型项目) 直接下载并用 <script> 标签引入,Vue 会被注册为一个全局变量. <script src="https://cdn.j ...
- Vue开篇之Vue-cli搭建项目
介绍 Vue.js是一套构建用户界面的渐进式框架.Vue 只关注视图层,采用自底向上增量开发的设计.Vue 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件. 第一步:安装node ...
- vue cli3.0快速搭建项目详解(强烈推荐)
这篇文章主要介绍下vue-cli3.0项目搭建,项目结构和配置等整理一下,分享给大家. 一.介绍 Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统.有三个组件: CLI:@vue/cl ...
- 【vue】---- 新版脚手架搭建项目流程详解
一.概述 本文将介绍vue项目完整的搭建流程,在使用新版本的脚手架基础上,进行了一系列的完善和配置.主要内容如下: 1.项目初始化 安装脚手架 创建项目 项目结构 2.项目搭建配置 引入第三方插件 路 ...
- 让我们用Vue cli全家桶搭建项目
一般项目都会用到这几个,这里不在详细介绍概念,只是简单的使用.一.搭建cli 1.事先安装好cnpm(淘宝镜像) npm install -g cnpm --registry=https://regi ...
随机推荐
- HTML5实现中国象棋游戏(无人能敌)
1. [代码][JavaScript]代码 var AI = AI||{}; AI.historyTable = {}; //历史表 //人工智能初始化AI.init = func ...
- CSS3实现自定义Checkbox动画
CSS3实现自定义Checkbox动画是一款CSS3自定义checkbox,而且这款checkbox还带有动画效果,当你选中checkbox的时候,会以动画的方式打上一个大大的勾. 源码下载:http ...
- ASM磁盘组mount一例
环境信息: oracle10gRAC + RHEL5.8 问题现象: db1服务器crs服务正常,ASM的data磁盘组处于dismount状态.db2集群服务正常. SQL> select ...
- win32com操作word(2):常用用法
一.对象的位置关系: 1.Range属性位于(部分): Selection__Section__Cell__Paragraph__Table__Bookmark__Comment__Row__List ...
- Early Media and Music on Hold
Early media refers to any media that is played to the initial caller’s phone before the remote party ...
- storm--chuanzhiboke
Storm里面有7种类型的stream grouping 1. Shuffle Grouping: 随机分组, 随机派发stream里面的tuple,保证每个bolt接收到的tuple数目大致相同. ...
- MySQL三个列组成唯一值查询_开源中国问题练习_20161026
问题地址:https://www.oschina.net/question/2923955_2202674 按 service_collect_day分类以后,按 app_id,node_id,ser ...
- ACM学习历程—BestCoder 2015百度之星资格赛1006 单调区间(组合数学)
Problem Description 百小度最近在逛博客,然后发现了一个有趣的问题. 如下图所示,是一个12 位数014326951987 , 它的数字先逐渐变大, 然后变小,再变大,接着变小,又变 ...
- Codeforces 762D Maximum path 动态规划
Codeforces 762D 题目大意: 给定一个\(3*n(n \leq 10^5)\)的矩形,从左上角出发到右下角,规定每个格子只能经过一遍.经过一个格子会获得格子中的权值.每个格子的权值\(a ...
- 四 akka学习 四种多线程的解决方案
http://blog.csdn.net/chenleixing/article/details/44044243 四种多线程的解决方案