fe-interview
fe-interview copied to clipboard
[vue] 有使用过vue吗?说说你对vue的理解
[vue] 有使用过vue吗?说说你对vue的理解
1、数据驱动 2、模块化 3、轻量级 4、SPA
渐进式,数据单向流动
1.mvvm框架 2.数据驱动 3.SPA 4.渐进式
Vue是一个构建数据驱动的渐进性框架,它的目标是通过API实现响应数据绑定和视图更新
(1) vue是一套用于构建用户界面的渐进式框架,vue的核心库只关注视图层,我们使用vue时完全可以像跟使用jq一样,通过<script>导入即可使用,当我们的页面足够多时,可以逐步的引入vue-router;当我们需要全局状态管理时,也可以再引入vuex;当我们需要构建一个大型的SPA项目时,完全可以使用工具vue-cli来构建。vue的渐进式表现在刚开始不会一股脑的把一些概念全抛给你,而是让你根据自己的需求来不断扩充。
(2) 官方对vue的评价是易用性、灵活性和高效性,我就这几点说一下自己看法:
① 易用性:vue提供数据响应式、基于配置的组件系统以及大量的指令等,这些让开发者只需关心核心业务即可。
② 灵活性:如果我们的应用足够小,可以只使用vue的核心库即可;随着应用的规模不断扩大,可以根据需求引入vue-router、vuex、vue-cli等其他工具。
③ 高效性:vue操作的是虚拟DOM,采用diff算法更新DOM,比传统的DOM操作更加的高效。
(3) 缺点:
① 不支持 IE8 及以下版本
② 这不是单纯的vue的缺点,其他框架如react、angular均有,那就是不利于SEO,不适合做需要浏览器抓取信息的电商网站,比较适合做后台管理系统。当然vue也有相关的SSR服务端渲染方式,也有针对vue服务端渲染的库,nuxt.js来提高SEO。
- vue是渐变式框架,根据自己的需求添加功能
- vue数据驱动采用mvvm模式,m是数据层,v是视图层,vm是调度者
- SPA单页面应用,只有一个页面,加载速率快
- 组件化,复用性强
使用过。 vue是一个前端渐进式框架,借鉴了mvvm模式思想,自身通过将数据和视图进行绑定,使得数据发生变化时,视图自动更新,开发者在书写业务代码的时候,不需要在手动操作dom,使得开发者可以全身心投入到业务逻辑开发中来。 vue的特点:
- 数据绑定
- 生命周期
- 页面组件化
- SPA
Vue.js(/vjuː/,或简称为Vue)是一个用于创建用户界面的开源JavaScript框架,也是一个创建单页应用的Web应用框架。
数据驱动(MVVM),当我们的页面足够多时,可以逐步的引入vue-router;当我们需要全局状态管理时,也可以再引入vuex;当我们需要构建一个大型的SPA项目时,完全可以使用工具vue-cli来构建。vue的渐进式表现在刚开始不会一股脑的把一些概念全抛给你,而是让你根据自己的需求来不断扩充。
MVVM`表示的是 `Model-View-ViewModel
- Model:模型层,负责处理业务逻辑以及和服务器端进行交互
- View:视图层:负责将数据模型转化为UI展示出来,可以简单的理解为HTML页面
- ViewModel:视图模型层,用来连接Model和View,是Model和View之间的通信桥梁
在Vue中每一个.vue文件都可以视为一个组件
优点:
- 降低了耦合度。
- 调试更加方便,因为每个组件职责单一,可以快速定位谁出了问题。
- 提高可维护性。每个组件职责单一,并且组件在系统中可以复用,对组件进行优化可获得系统的整体升级
- vue是渐变式框架,我们使用vue时完全可以跟使用jquery一样,通过
<script>导入即可,当我们的页面足够多时,可以逐步引入vue-router来进行前端路由管理;但我们需要全局状态管理时,也可以引入vuex;当我们需要构建一个大型的SPA项目时,完全可以使用工具vue-cli构建。vue的渐进式表现不是刚开始把全部概念全部灌输给你,而是根据你的需求不断扩充; - vue借鉴了mvvm模式思想,自身通过讲数据和视图进行绑定,使得数据发生变化时视图自动更新,开发者在写业务代码时,不需要手动操作dom,使得开发者可以更全心的投入到业务逻辑的开发中来;
- 官方对vue的评价是易用性、灵活性、高效性,我就这几点说一下自己的看法:
- 易用性:也是前面提到的mvvm思想,数据响应式,基于配置的组件系统及大量的指令等,可以让开发者更大程度上关心核心业务即可;
- 灵活性:如果我们开发的应用足够小,可以只使用vue的核心库即可,随着应用的规模不断扩大,可以根据需求引入vue-router、vuex、vue-cli等其他工具;
- 高效性:vue操作的是虚拟DOM,采用diff算法更新DOM,比传统的DOM操作更加的高效。
- 国人尤雨溪开发
- MVVM框架,开发人员只需要关心数据,而不再直接操作DOM
- SPA单页面应用,只有一个页面,加载速率快
- 采用虚拟DOM,性能好
- 渐进式框架,初始很小,需要什么再安装什么,比如router、vuex等。
- 国人尤雨溪开发
- MVVM框架,开发人员只需要关心数据,而不再直接操作DOM
- SPA单页面应用,只有一个页面,加载速率快
- 采用虚拟DOM,性能好
- 渐进式框架,初始很小,需要什么再安装什么,比如router、vuex等。
[vue] 有使用过vue吗?说说你对vue的理解
- 有使用,双向的数据绑定,依赖收集自动的数据渲染
- 使用类MVVM的架构模式 ,SPA构建
- 可以引用各种模块 router vuex
- 国内vue生态很好 但是不支持ie8
组件化 模块化 数据驱动视图 单向数据流
- Vue 是一个动态构建用户界面的渐进式JavaScript框架 特点:
- 遵循MVVM模式
- 编码简洁,体积小、运行效率高,适合移动/PC端开发
- 它本身只关注界面,也可以配合其他第三方库开发项目
Vue
Vue是一个流行的JavaScript框架,用于构建用户界面。它采用了基于组件的开发模式,通过将页面拆分为多个可复用的组件,实现了代码的模块化和可维护性。
<template>
<div>
<h1>{{ message }}</h1>
<button @click="changeMessage">Change Message</button>
</div>
</template>
<script>
export default {
data() {
return {
message: 'Hello, Vue!'
};
},
methods: {
changeMessage() {
this.message = 'Hello, World!';
}
}
};
</script>
在上述代码中,我们定义了一个Vue组件,它包含一个数据属性message和一个方法changeMessage。模板中的{{ message }}用于显示message的值,@click绑定了按钮的点击事件,并在点击时调用changeMessage方法。
这个示例展示了Vue的核心概念,包括数据绑定、事件处理和组件化开发。Vue通过将数据和视图进行双向绑定,使得数据的变化可以自动更新视图,从而简化了前端开发的过程。
特点
组件化开发
Vue采用组件化开发的方式,将页面拆分为多个可复用、独立的组件。每个组件都有自己的模板、样式和逻辑,可以通过组合和嵌套来构建复杂的用户界面。这种组件化的开发模式使代码更具可维护性、可测试性和可重用性。
响应式数据绑定
Vue使用响应式数据绑定机制,通过将数据和视图进行关联,实现了数据的自动更新。当数据发生变化时,相关的视图会自动更新,而无需手动操作DOM。这种响应式的数据绑定机制使开发者可以更专注于数据的变化和业务逻辑的实现,而无需关注手动更新视图。
Vue生命周期
Vue组件具有生命周期钩子函数,允许开发者在组件不同的生命周期阶段执行特定的操作。例如,在组件创建、挂载、更新和销毁等不同阶段,可以通过生命周期钩子函数来执行相应的逻辑,以满足业务需求。
Vue路由
Vue提供了Vue Router插件,用于实现单页面应用(SPA)的路由功能。Vue Router允许开发者定义不同的路由路径和对应的组件,以实现页面之间的切换和导航。通过Vue Router,可以创建具有良好用户体验的前端路由系统。
状态管理
对于大型应用程序,Vue提供了Vuex状态管理库,用于集中管理应用程序的状态。Vuex允许开发者将共享的状态存储在一个中央存储库中,并提供了一系列的API和工具来管理和操作这些状态。通过Vuex,可以更好地组织和管理应用程序的数据流,简化了状态的共享和跨组件通信。
使用过vue, vue就是一个框架,通过虚拟dom来实现网页的渲染,通过模块化开发,组件可以复用,渐进式,由数据驱动