Vue 初学笔记
1. 对 Vue 的理解
Vue.js 是一个以数据驱动和组件化的思想构建的 JavaScript MVVM 库,下载 Vue.js 后可以直接在html里引用,Vue 本身并不依赖 Node 运行。
比如如下的代码就可以直接在浏览器中查看
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Vue Test</title>
<script src="https://cdn.bootcss.com/vue/2.2.2/vue.min.js"></script>
</head>
<body>
<div id="app">
<p>{{ message }}</p>
</div>
<script>
new Vue({
el: '#app',
data: {
message: 'Hello Vue.js!'
}
})
</script>
</body>
</html>
但是随着业务开发过程中所需的库或框架越来越多,在页面中直接引用会对库的管理和版本控制等造成极大的不便。所以一般会借助 NodeJS中的 npm 工具来管理依赖包。
包括后面再使用 vue-cli 脚手架搭建项目的时候需要NodeJS,目前使用NodeJS最多的场景基本上都是作为前端工程化构建工具。
2. 开发环境搭建
2.1 安装 Node.js
首先需要安装 Node.js(Javascript运行环境),因为 Vue 依赖于 NodeJS 的 npm 的工具来管理依赖包。npm 是随同 NodeJS 一起安装的包管理工具, 可以理解为 JAVA 中的 Maven。
安装成功后,可以通过命令检测安装的版本信息。
命令:
node -v //监测 Node 的版本
npm -v //检测 npm 的版本
2.2 安装淘宝镜像
npm 包管理工具在下载外部依赖包时候速度太慢,一般通过淘宝镜像来下载,后续可以用 cnpm 命令管理工具代替默认的 npm 管理工具
命令: npm install -g cnpm --registry=https://registry.npm.taobao.org
2.3 全局安装 Vue 的脚手架工具 Vue-cli
vue-cli本身也是依赖包,用于自动生成vue项目模板,也就是说我们可用用vue-cli来生成一个基本的项目,里面包含了一些基本目录结构、配置文件、入口函数等等。就类似于我们用VS创建一个WinForm、Asp.Net MVC 等项目,Eclipse创建一个Maven项目一样。
命令: cnpm install --global vue-cli
安装成功后可以通过命令 "vue" 来查看脚手架相关信息。
3. 创建项目
脚手架安装成功后就可以通过它来创建一个新的项目了。
3.1 创建一个基于 webpack 模板的新项目
在项目存储目录中,按住 shift + 右键,然后选择在此处打开命令窗口,输入以下命令。
命令:vue init webpack 项目名

如下图所示,就是vue项目基本目录结构

3.2 安装依赖
创建成功后,因为项目运行有很多基础依赖包,所以项目开始需要安装依赖。在项目目录中,按住 shift + 右键,然后选择在此处打开命令窗口,输入以下命令。
命令:cnpm install
3.3 启动项目
在 "project-name" 文件夹中,按住 shift + 右键,然后选择在此处打开命令窗口,输入以下命令就可以启动项目了。在然后在浏览器访问 "localhost:8080"。
命令:cnpm run dev

其中 http://localhost:8080 就是我们的项目访问地址
4. npm 常用命令
新增依赖外部包
npm install <package-name> //局部安装,包文件下载到 node_modules 目录中(默认会安装最新的版本)
npm install -g <package-name> //全局安装(默认会安装最新的版本)
npm install <package-name>@X.Y.Z //安装特定版本(X.Y.Z为包的版本号) 查看已安装的依赖外部包
npm list <package-name> //当前目录
npm list <package-name> -g //全局 更新依赖外部包
npm update <package-name>
npm update <package-name> -g 卸载依赖外部包
npm unistall <package-name> //当前目录
npm unistall -g <package-name> //全局
Vue 初学笔记的更多相关文章
- Vue学习笔记-2
前言 本文非vue教程,仅为学习vue过程中的个人理解与笔记,有说的不正确的地方欢迎指正讨论 1.computed计算属性函数中不能使用vm变量 在计算属性的函数中,不能使用Vue构造函数返回的vm变 ...
- Vue学习笔记-1
前言 本文不是Vue.js的教程,只是一边看官网Vue的教程文档一边记录并总结学习过程中遇到的一些问题和思考的笔记. 1.vue和avalon一样,都不支持VM初始时不存在的属性 而在Angular里 ...
- C++ STL初学笔记
C++ STL初学笔记 更系统的版本见徐本柱的PPT set 在这儿:http://www.cnblogs.com/pdev/p/4035020.html #include <vector&g ...
- Vue学习笔记-Vue基础入门
此篇文章是本人在学习Vue是做的部分笔记的一个整理,内容不是很全面,希望能对阅读文章的同学有点帮助. 什么是Vue? Vue.js (读音 /vjuː/,类似于 view) 是一套构建用户界面的渐进式 ...
- Vue学习笔记三:v-bind,v-on的使用
目录 v-bind:绑定属性值,内容相当于js,缩写: v-on:绑定方法,缩写@ 总结 v-bind:绑定属性值,内容相当于js,缩写: 我添加了一个input标签,如下 <input typ ...
- vue 学习笔记(二)
最近公司赶项目,一直也没时间看 vue,之前看下的都快忘得差不多了.哈哈哈,来一起回顾一下vue 学习笔记(一)后,继续向下看嘛. #表单输入绑定 基础用法 v-model 会忽略所有表单元素的 va ...
- Spring 初学笔记
Spring 初学笔记: https://blog.csdn.net/weixin_35909255/article/category/7470388
- vue 自学笔记记录
vue 自学笔记(一): 知识内容: 安装vue ,创建vue实例,安装第一个组件,单项数据流 https://www.cnblogs.com/baili-luoyun/p/10763163.htm ...
- vue学习笔记之:为何data是一个方法
vue学习笔记之:为何data是一个方法 在vue开发中,我们可以发现,data中的属性值是在function中return出来的.可为何data必须是一个函数呢?我们先看官方的解释: 当一个组件被定 ...
随机推荐
- ssh远程执行命令并自动退出
usage: ssh [-1246AaCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec] [-D [bind_address:]port] [ ...
- 使用Surging Mqtt 开发基于WS的MqttClient客户端
原文:使用Surging Mqtt 开发基于WS的MqttClient客户端 最近一段时间由于要做一套智能设备系统,而有幸了解到Surging中的Mqtt broker,学习了很多东西本篇文章基于Su ...
- js进阶 12-15 jquery如何实现点击button显示列表,点击其它位置隐藏列表
js进阶 12-15 jquery如何实现点击button显示列表,点击其它位置隐藏列表 一.总结 一句话总结:在button中阻止事件冒泡. 1.如何咋button中阻止事件冒泡(两种方法)? ev ...
- 把git仓库从码云迁到github,及git常用命令
前言 刚开始建仓库的时候,因为网络的原因选择了国内的码云.后来又想换成github,毕竟平时github使用率比较高. 替换远程仓库地址方式如下: git remote set-url origin ...
- 算法 Tricks(五)—— 将一个序列量化为何值时平方误差最小
设数列为 A[],区间在 [a, b],设使量化后误差平方最小的数值为 m,则误差平方关于 m 的函数可以写作如下形式: ∑i=ab(A[i]−m)2=(b−a+1)⋅m2−2m∑i=abA[i]+∑ ...
- C++ 指针(不论什么一个指针本身的类型都是unsigned long int型)
1.指针数组: 即 数组的元素是指针型; 例:int*pa[2]; 明明是一维的指针数组.竟当作二维数组用. [cpp] view plain copy //利用指针数组存放单位矩阵 #include ...
- Android屏幕信息获取
Android中有时需要获取屏幕的size信息以便对控件位置进行动态控制,最近做了一些研究,现在将获取屏幕大小信息的方法总结如下,可能存在一些地方理解的不全面. 1.getMetrics Displa ...
- 【心情】Priority_queue容器的用法
所给的代码最顶端是最小的元素 要改为最顶端是最大的则只需把 friend bool operator<(Node a, Node b) { return a.val > b.val; } ...
- 将String转化为Long,并将Long转化为Date 分类: B1_JAVA 2014-06-30 16:23 1249人阅读 评论(0) 收藏
package org.ljh.test.javaee; import java.text.SimpleDateFormat; import java.util.Date; public class ...
- 常用有效检测数据库运行状态SQL脚本
1.查看数据库中不为 InnoDB 引擎的表 SELECT TABLE_SCHEMA, TABLE_NAME, ENGINE FROM information_schema.TABLES W ...