vue 基本知识

一、基本使用

  • 1、模板(插值,指令
  • 2、computed和watch
    2.1、computed有缓存,data不变则不会重新计算
    2.2、watch深度监听,deep: true(打开深度监听)
    2.3、info : {city: “北京”},打开了深度监听,则改变city也可以监听到
    2.4、watch监听引用类型,拿不到oldVal
  • 3、class和style 动态绑定
:class= "{black: isBlack}"
:class="{black}"
:style="styleData"

data() {
	return  {
		isBlack: true,
		black: "black",
		styleData: {
			fontSize: "40px",
			color: "red"
		}
	}
}
  • 4、条件 v-if、v-else、v-else-if、v-show
  • 5、循环 v-for
    如果使用index作为key,则在中间插入值时,将会把后面的数据全都再渲染一遍
  • 6、事件 event(暂时还不知道有什么用)
    methods在使用方法的时候,会接受一个event的参数,可以打印出来看看
    · event是原生的
    · 事件是被挂载到元素上的
  • 7、表单
    v-model.trim:去除字符串两端的空格
    v-model.lazy:失去焦点才会更新值
    v-model.number:转换成数值

二、组件

  • 1、生命周期
  • 2、props(类型和默认值)
  • 3、v-on和$emit
  • 4、自定义事件

三、高级特性

  • 1、自定义v-model
  • 2、$nextTick
  • 3、refs
  • 4、slot
  • 5、动态组件
  • 6、异步组件
  • 7、keep-alive
  • 8、mixin

四、vuex

  • 1、state
  • 2、getters
  • 3、action
  • 4、mutation
  • 5、用于vue
    ~ 5.1、dispatch
    ~ 5.2、commit
    ~ 5.3、mapState
    ~ 5.4、mapGetters
    ~ 5.5、mapActions
    ~ 5.6、mapMutations

四、vue-router

  • 1、动态路由
  • 2、to和push
  • 3、hash和history
  • 4、懒加载(配合动态组件)

Vue面试题

  • 1、v-show和v-if的区别
  • 2、为何v-for中要用key
    · 尽量不要使用index当key
  • 3、描述Vue组件生命周期(有父子组件的情况)
  • 4、Vue组件如何通讯
  • 5、描述组件渲染和更新的过程
  • 6、双向数据绑定v-model的实现原理
### Vue.js 基本概念和基础知识 Vue.js 是一个用于构建用户界面的渐进式框架,其核心库专注于视图层,并且可以轻松地与其他库或项目集成。以下是 Vue.js 的基本概念和基础知识: #### 1. Vue 实例 Vue 应用的核心是通过 `new Vue` 创建的一个实例对象[^1]。每个 Vue 应用都是以一个 Vue 实例为基础开始的,它可以通过挂载到 DOM 元素上控制页面内容。例如: ```javascript var app = new Vue({ el: '#app', data: { message: '学习 Vue.js' } }); ``` 这里的 `el` 指向了需要管理的 DOM 元素,`data` 定义了应用中的数据。 #### 2. 数据绑定与模板语法 Vue 提供了强大的模板语法来实现数据绑定[^3]。通过双大括号语法 `{{ }}`,可以将数据动态插入到 HTML 中。此外,Vue 支持指令(如 `v-if`、`v-for`)来操作 DOM 和控制逻辑。 #### 3. 计算属性与侦听属性 计算属性是一种基于已有数据动态计算新值的方式[^1]。相比直接在模板中编写复杂的表达式,计算属性更加高效和可维护。侦听属性则用于观察和响应 Vue 实例上的数据变化。 ```javascript computed: { reversedMessage: function () { return this.message.split('').reverse().join(''); } } ``` #### 4. 组件系统 Vue 的组件是可复用的 Vue 实例,具有预定义选项[^3]。通过组件化开发,可以将复杂的应用拆分为多个小型、独立的模块。组件的定义通常包括模板、脚本和样式部分。 ```html <template> <div class="my-component"> <h1>{{ message }}</h1> </div> </template> <script> export default { name: 'MyComponent', data() { return { message: 'Hello Vue.js!' }; } }; </script> ``` #### 5. 生命周期钩子 Vue 实例有一个完整的生命周期,从创建到销毁会经历一系列阶段[^4]。每个阶段都有对应的生命周期钩子函数,允许开发者在特定时刻执行代码。例如,`mounted` 钩子可以在组件挂载完成后访问 DOM 元素。 #### 6. 路由管理 Vue Router 是官方提供的路由管理器,用于构建单页面应用中的导航系统[^2]。通过配置路由规则,可以实现页面之间的切换而无需重新加载整个页面。 #### 7. 状态管理 Vuex 是 Vue.js 的状态管理库,用于集中管理组件间的共享状态[^2]。当应用规模较大时,使用 Vuex 可以更方便地处理全局状态。 #### 8. 插件系统与 Axios Vue.js 支持插件扩展功能,例如 Axios 是一个流行的 HTTP 请求库[^5]。通过 Axios,可以发送异步请求并与后端交互。 --- ### 示例代码:简单的 Vue 应用 以下是一个结合了数据绑定、计算属性和生命周期钩子的完整示例: ```html <div id="app"> <p>原始消息: {{ message }}</p> <p>反转消息: {{ reversedMessage }}</p> </div> <script> new Vue({ el: '#app', data: { message: '学习 Vue.js' }, computed: { reversedMessage: function () { return this.message.split('').reverse().join(''); } }, mounted: function () { console.log('组件已挂载'); } }); </script> ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值