vue-if 和 vue-show的区别:
- 与vue-if不同的是,vue-show的值无论是true还是false,都存在与HTML代码中
- vue-if是在HTMl中移除,而vue-show只是设置了css属性为display
如何让css只在当前组件中生效
<style scoped></style>//只需要设置为scoped即可
指令keep-alive的作用
把切换出去的组件保留在内存中,保留状态或避免重新渲染
<component :is='currentView' keep-alive></component>
路由嵌套
路由嵌套会将其他组件渲染到该组件内,而不是整个页面的跳转,router-view本身就是将组件渲染到位置
指令v-el的使用
访问一个元素,使用this.$el.div =====> $el
vue-js中使用事件名
v-on:click = “event”;
简写:@:click = “event”
Vue.js是什么?
Vue 是一套构建用户界面的、渐进式前端框架,采用自底而上增量的开发设计
Vue的特性
- MVVM模式
- 组件化
- 指令系统
- vue2.0开始支持虚拟dom。(vue1.0是操作真的dom元素,而不是操作虚拟的dom)
使用MVVM模式有什么优点
- 低耦合
- 可重用性
- 独立开发
- 可测试性
Vue.js 和 React.js有什么区别?
相同点:
- 都是提供数据驱动、可组合搭建的视图组件
不同点:
- React是基于Virtual DOM 虚拟dom,在内存中描述DOM树状态的数据结构
- React中的虚拟DOM是通过diff算法来操作的,可保证视图与数据同步
- Vue中的数据默认可变,直接更新DOM
如何定义vue-router的动态路由?如何获取传过来的动态参数?
在router目录下的index.js文件中,对path的属性加上/:id,使用router对象中的params.id来获取动态参数
vue-router有几种导航钩子(导航守卫、路由守卫)
- 全局导航钩子(全局守卫):router.beforeEach(to,from,next); 作用:跳转时判断拦截
- 组件内的钩子:beforeRouteEnter、beforeRouteUpdate、beforeRouteLeave
- 路由独享守卫:beforeEnter(to,from,next)
mint-ui是什么?怎么使用?至少说出三个组件。
基于vue的UI组件库。npm安装、导入样式、导入js。
IView、Element-ui
自定义组件(v-check、v-focus)的方法具有哪些?
- 全局定义指令:在vue对象中的directive(name,function(){})、在组件内定义指令directives
- 钩子函数:bind(el,binding)绑定事件触发、inserted节点插入时触发、update组件内更新
Vue 的双向数据绑定原理是什么?
通过Object.defineProperty()来劫持各个属性的setter、getter,在数据变动时发布消息给订阅者,触发相应的监听回调
vue生命周期的理解
8各阶段:创建前后、载入前后、更新前后、销毁前后
-
创建前后:beforeCreated、此时的Vue实例的挂在元素$el 和数据对象都为undefined,还未初始化
created阶段,实例数据对象有了,但是挂载$el还没有
-
载入前后:beforeMount、此时的Vue和挂载对象$el 都初始化了
mounted阶段、vue实例完成,数据对象渲染成功
-
更新前后:beforeUpdate和updated
-
销毁前后:执行destroy方法后,data的改变不会再触发周期函数,Vue解除事件监听和dom绑定
如何认识vuex?
一种开发模式,通过状态集中管理驱动组件的变化
请说出vue-cli项目中src目录下每个文件夹和文件的用法?
assets放置静态资源
component放置组件
router 定义路由相关配置
view放视图
app.vue是一个应用主组件
main.js是入口文件
vue-cli中如何使用自定义的组件?有遇到过哪些问题?
-
在components目录下新建组件文件 XXXX.vue script 导出export default
-
在需要用的页面导入 import XXXX from ‘./components/XXXX.vue’
-
在vue的子组件components属性上面注册组件。components{XXXX}
-
在template视图view中使用
问题,在使用组件的时候,需要注意的是必须要用烤串式命名如