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必须是一个函数呢?我们先看官方的解释: 当一个组件被定 ...
随机推荐
- 一个开源.net混淆器——ConfuserEx (收藏)
一个开源.net混淆器——ConfuserEx http://yck1509.github.io/ConfuserEx/ 由于项目中要用到.net 混淆器,网上搜寻了很多款,比如Dotfuscator ...
- 芯片SA58672(功放芯片)
1::下面的中文图可能不准: 针对上面的图,数据手册中有一些参数的推导: 这个式子是电压增益的 这个式子是关于截止频率的 典型原理图: 需要电源去耦,能够提高效率. PVDD引脚处的电 ...
- [TypeScript] Interface and Class
When to use Interface and when to use Class. Let's see one example: export interface Lesson { course ...
- html的meta标签的charset应该用UTF-8还是utf-8?
之前我也纠结过写html的时候是用<meta charset="UTF-8"/> 或者是 <meta charset="utf-8"/> ...
- 17、网卡驱动程序-DM9000举例
(参考:cs89x0.c可以参考) DM9000 芯片实现网络功能的基础,在接收数据时采用中断方式,即当有数据到来并在 DM9000 内部 CRC 校验通过后会产生一个接收中断: 网卡驱动程序框架: ...
- C++项目參考解答:累加求圆周率
[项目-累加求圆周率] 用例如以下公式求π的近似值(计算直到最后一项的绝对值小于10−5) π4=1−13+15−17+... [參考解答] #include <iostream> usi ...
- nslookup详解(name server lookup)( 域名查询)
nslookup详解(name server lookup)( 域名查询) 一.总结 1.爬虫倒是很方便拿到页面数据:a.网页的页面源码我们可以轻松获得 b.比如cnsd博客,文章的正文内容全部放在 ...
- angular表单知识点
原文 https://www.jianshu.com/p/c772d143e1fc 大纲 1.对表单的理解 2.模板驱动表单(Template Driven Forms) 3.响应式表单(Reacti ...
- RSA算法原理(转)
如果你问我,哪一种算法最重要?我可能会回答“公钥加密算法”.因为它是计算机通信安全的基石,保证了加密数据不会被破解.你可以想象一下,信用卡交易被破解的后果. 进入正题之前,我先简单介绍一下,什么是”公 ...
- 【19.46%】【codeforces 551B】ZgukistringZ
time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...