-
安装
Node.js
和npm
。
首先,新版的Node.js
中包含npm
,只需要安装Node.js
即可。
具体的安装教程可以百度(考虑到大部分同学的开发环境是Windows,而Windows的安装比较简单,下载安装包按照提示安装即可)。
安装完成后,检查一下是否安装成功。打开命令行(cmd
),输入- 检查
Node.js
版本node -v
- 检查
npm
版本npm -v
如果无法显示版本号,可能是环境变量配置等问题(很常见了),同样的,因为不是今天分享的重点,所以如果出现这样的问题可以百度解决。
- 检查
-
关于
npm
换源- 一种方法是每次使用
npm install
命令时,在后面加参数使用淘宝源,即npm install <packageName> --registry=https://registry.npm.taobao.org
- 另一种方法是安装
cpnm
npm install -g cnpm --registry=https://registry.npm.taobao.org
之后使用
cpnm
命令(本质也是淘宝还原),即cnpm install <packageName>
方便起见,后面的命令都用
npm
,但你可以自行选择是否换源、用哪种换源方式。 - 一种方法是每次使用
-
Vue
和Vue CLI
的区别-
Vue
全称是Vue.js
,是一套用于构建用户界面的渐进式JavaScript
框架。 -
Vue CLI
是一个脚手架,通俗地说,Vue CLI = Vue + JS plugins
。Vue CLI
是代码生成器,可以快速生成一套基于Vue
完整的前端框架,单独编译,单独部署;可以再集成各种第三方插件,扩展出更多的功能。 - 对应关系
Vue CLI
版本Vue
版本< 4.5
Vue 2
>= 4.5
Vue 2
/Vue 3
-
-
安装
Vue CLI
至于为什么不安装Vue
后面解释
用npm
或cnpm
安装某个版本的Vue CLI
。npm install -g @vue/cli@3.11.0
检查是否安装成功
vue -V
-
新建项目
vue init webpack <projectName>
自选项选项 Project name 项目名称,回车默认 Project description 项目描述,回车默认 Author 作者,回车默认 Vue build 选择推荐项 Install vue-router 路由插件,建议是 Use ESLint 代码风格管理插件,新手建议否 -
安装依赖
如果上一步没有选择自动安装依赖,需要自行运行npm install
-
工具推荐
- 编辑器:
VS Code
。轻量化,适合写前端页面。 - 扩展:
Vetur
。Vue
代码高亮(包括HTML
、CSS
、JS
),npm脚本可视化等。
- 编辑器:
-
目录结构
目录结构目录 说明 bulid 操作文件,运行 npm run *
时执行的就是这里的文件config 配置文件,执行文件的配置信息 src 基本所有的源代码以及图片都放在这个文件夹下,也是我们主要编写部分主要涉及的文件夹 src
子目录如下
image.png子目录 说明 assets 资源文件夹,放图片等资源 components 组件文件夹,放自定义组件 router 路由文件夹,决定页面的跳转规则 App.vue 应用组件,挂载所有自己写的组件 main.js webpack入口文件 -
运行项目
cd demo npm run dev
主页 -
学会路由跳转
在src/router
目录下的index.js
文件中添加{ path: '/tutorial', name: '从零开始搭建Vue项目', component: () => import('@/views/tutorial/index'), },
同时,在
src
目录下新建views
文件夹,下面新建tutorial
文件夹,下面新建index.vue
文件。
image.png
其中写入<template> <div> <h1>从零构建Vue项目</h1> </div> </template> <script> export default {}; </script> <style> </style>
这样,我们就新建了一个页面,这个页面的内容是“从零构建Vue项目”,这个页面的路由是
/tutorial
,这个页面对应的文件在src/views/tutorial/index.vue
。但是用户如何访问到这个页面呢?显然不能改地址。在HelloWord.vue
(我们发现主页页面在这里)中添加一个路由链接<router-link to="/tutorial">从零开始搭建Vue项目</router-link>
其中,
to
参数后面是跳转目标的路由,加/
表示从根路由开始,不加/
表示从当前路由开始(后面会演示)。刷新主页,变成了
主页.png
点击最下面那行字,我们跳转到
新建页.png
可以看到成功了! -
Vue
文件结构模块 功能 语言 template 内容 html
script 数据与方法 javascript
style 样式 css
接下来对页面进行一些扩充,来理解三个部分的作用。
添加一个按钮<button>+1</button>
前端页面的“内容”就放在
template
中,相当于我们告诉Vue
框架,这个页面有两个内容,先是一个标题,标题叫“从零构建Vue项目”;然后是一个按钮,按钮文字是“+1”。
但是,如果我们想让这个按钮变成蓝色呢?在按钮上添加类,然后再style
模块编写类的具体内容。<button class="my-button">+1</button>
.my-button { background-color: blue; }
看看效果
修改前
修改后
所以,我们在template
中定义内容有什么,在style
模块定义内容长什么样,也就是“样式”。
那么script
的作用是什么呢?前面讲到数据和方法,那么先说数据。Vue.js
使用了基于HTML
的模板语法,允许开发者声明式地将DOM
绑定至底层组件实例的数据。所有Vue.js
的模板都是合法的HTML
,所以能被遵循规范的浏览器和HTML
解析器解析(官方文档)。<button class="my-button">{{ buttonText }}</button>
data() { return { buttonText: "+1", }; },
这意味着我们可以动态的绑定“内容”中的数据,如果在操作中修改了变量,那么页面展示的内容也会改变
<span>功德</span> <input :value="count"/> <button class="my-button" @click="handleClick">+1</button>
methods: { handleClick() { this.count += 1; }, },
我们在旁边再添加一个数据
count
。这里涉及到vue的一个缩写,@click
等价于v-on:click
,意为监听点击事件的函数。然后在scipt
里的methods
中编写对应函数——这就是所谓“数据与操作”中的“操作”。看下效果
每次点击+1
到目前为止,我们已经基本理解了Vue
文件的结构。 -
前后端连接
实际上,目前为止还停留在前端界面的开发。实际开发中一定是需要和后端的数据库进行交互的。
什么叫“前后端分离”?什么叫“前后端不分离”(django)?简而言之,就是前端只需要知道和后端交互的接口,而不管后端开发的逻辑,双方通过约定好的数据格式交互(一般为json
文件)。这样的好处是利于团队开发。
Vue
常用的交互插件为axios
。安装npm install axios
使用
import axios from "axios"; export default { created() { axios({ method: "get", url: "http://jsonplaceholder.typicode.com/posts", }).then((response) => { console.log(response); }); }, };
控制台数据
后端返回
发现:任何语言,哪怕换了框架都可以!
-
结语
恭喜你
实际上,了解了基本原理,任何复杂的架构都是再次基础上建立的。
需要学习的内容内容 推荐教程 说明 html
&css
样式方面 element-ui
官方文档 更简单的构建组件,搭积木 vue
官方文档 系统学习 vue-element-admin
官方文档 后台管理系统模板(常用) trick
- 控制台调试:请求、元素与样式、日志
-
Rester
/postman
: 请求
从零新建Vue项目
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Vue是近两年来比较火的一个前端框架(渐进式框架吧)。Vue两大核心思想:组件化和数据驱动。组件化就是将一个整体合...
- (一) 关于mac 开发环境:Homebrew ( Mac的包管理神器 ) → Node.js → cnpm(淘...
- 1.安装node.js从node.js官网下载并安装node 安装过程很简单,一直点下一步就ok了。1.1我们通过...