1 配置环境
1.1 终端
Linux
和Mac
上可以用自带的终端。
Windows
上推荐用powershell
或者cmd
。Git Bash
有些指令不兼容。
1.2 安装Nodejs
1.3 安装@vue/cli
打开Git Bash
,执行:
npm i -g @vue/cli
如果执行后面的操作有bug,可能是最新版有问题,可以尝试安装早期版本,比如:npm i -g @vue/cli@4
1.4 启动vue
自带的图形化项目管理界面
vue ui
1.5 常见问题
- Windows上运行vue,提示无法加载文件,表示用户权限不足。
解决方案:用管理员身份打开终端,输入set-ExecutionPolicy RemoteSigned
,然后输入y
2 基本概念
2.1 script部分
export default
对象的属性:
name
:组件的名称components
:存储<template>
中用到的所有组件props
:存储父组件传递给子组件的数据watch()
:当某个数据发生变化时触发computed
:动态计算某个数据setup(props, context)
:初始化变量、函数ref
定义变量,可以用.value
属性重新赋值reactive
定义对象,不可重新赋值props
存储父组件传递过来的数据context.emit()
:触发父组件绑定的函数
2.2 template部分
<slot></slot>
:存放父组件传过来的children
。v-on:click
或@click
属性:绑定事件v-if
、v-else
、v-else-if
属性:判断v-for
属性:循环,:key
循环的每个元素需要有唯一的key
v-bind
:或:
:绑定属性
2.3 style部分
<style>
标签添加scope
属性后,不同组件间的css
不会相互影响。
2.4 第三方组件
view-router
包:实现路由功能。vuex
:存储全局状态,全局唯一。state
: 存储所有数据,可以用modules
属性划分成若干模块getters
:根据state
中的值计算新的值mutations
:所有对state
的修改操作都需要定义在这里,不支持异步,可以通过$store.commit()
触发actions
:定义对state
的复杂修改操作,支持异步,可以通过- store.dispatch()
触发。注意不能直接修改
state,只能通过
mutations修改
state`。 modules
:定义state
的子模块