前端
什么是mvvm模型
是一种软件架构模式,用于构建清晰、可维护的用户界面。它由三个核心组件组成:
M model, 需要处理的数据
V view,页面
Vm view-model,核心中转站,修改值,页面渲染,数据双向绑定都要经过vm
v-bind的作用
针对任意标签,绑定标签的属性
针对输入控件,是单向绑定
简写: :bind:属性名
动态地的去绑定一个或多个属性,绑定各种HTML属性,如 class、style、href 等
v-model的作用
针对输入控件,实现数据的双向绑定
用于在表单控件元素(如 、 和 )和 Vue 实例的数据之间创建双向数据绑定
计算属性的作用
根据其他数据计算得到新的数据,支持set和get
Computed:{
Get(),
Set(v)
}
缓存机制,声明式渲染,数据转换,派生状态,可维护性,可读性
vue中父组件如何向子组件传参
子组件通过朋prop定义属性
父组件导入子组件,在子组件的标签中通过子组件的prop属性向子组件传参
子组件定义接收参数, 父组件传递参数,使用对象语法传递多个参数
实现类似页面加载完成获取数据可以在哪些vue的生命周期方法中实现
钩子函数:created()
通常,created() 和 mounted() 是最常用的生命周期钩子来获取数据
vue中router的作用
前端路由,两种模式:hash和history
页面导航,视图渲染,参数处理,路由嵌套,重定向和别名
vuex的作用
Vue中提供的存储数据的组件
State 需要存储的数据
Get方法,获取State的数据
Mutation定义函数修改State的数据 commit调用
Action定义函数,异步调用mutation中方法 Dispatch调用
集中式存储,状态管理,组件间共享状态,模块化,变更日志,异步处理
什么是ajax
局部刷新的异步通信技术
XmlHttpRequest 核心对象
是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器交换数据,并且能够更新部分网页内容,从而使得网页能够实现异步更新。
uniapp是做什么的
跨平台的多端开发框架不会将程序转为原生的语言,内部使用wbe组件。通过web组件加载h5页面
支持html/安卓/ios
支持编译到多个平台,包括 iOS、Android、Web、微信小程序、支付宝小程序、百度小程序、字节跳动小程序、QQ小程序、快应用等;
丰富的组件库:提供了丰富的组件,方便开发者构建复杂的应用程序;
条件编译:支持根据不同平台进行条件编译,使得开发者可以为特定平台编写特定的代码。
设计模式
简述单例模式的理解
确保在整个应用中,某个类只有一个对象
构造方法私有的
在类中提供静态方法,创建类对应的对象
懒汉式:代码通过加锁实现
饿汉式:定义静态变量的时候直接创建对象
它是一种常用的软件设计模式,其核心目的是确保一个类在应用程序的生命周期内只有一个实例,并提供一个全局访问点来获取这个实例
简述对代理模式的理解
实现在不修改原有的代码的基础上,实现对原来功能的扩展
提供一个统一的接口或者抽象类
目标类和代理类都实现该接口
代理类中需要有目标对象的引用
就是本该我做的事,我不做,我交给代理人去完成。就比如,我生产了一些产品,我自己不卖,我委托代理商帮我卖,让代理商和顾客打交道,我自已负责主要产品的生产就可以了。
简述对简单工厂模式的理解
创建相关的对象
统一的接口,不同的实现类
给出静态方法,返回值使用接口,根据不同的状态标记来创建不同的对象
是一种创建型设计模式,其目的是封装对象的创建过程,使得在不直接实例化类的情况下创建对象。