1. 请说下封装 vue 组件的过程?2. Vue组件如何进行传值的?3. Vue 组件 data 为什么必须是函数?4. 讲一下组件的命名规范

1. 请说下封装 vue 组件的过程?

首先,组件可以提升整个项目的开发效率。能够把页面抽象成多个相对独立的模块,解决了我们传统项目开发:效率低、难维护、复用性等问题。

  • 分析需求:确定业务需求,把页面中可以复用的结构,样式以及功能,单独抽离成一个组件,实现复用

  • 具体步骤:全局 app.component 或者在局部配置项 components 中,定义组件名,可以在 props 中接受给组件传的参数和值,子组件修改好数据后,想把数据传递给父组件,可以采用 $emit 方法。

2. Vue组件如何进行传值的?

父向子 -> props定义变量 -> 父在使用组件用属性给props变量传值

子向父 -> $emit触发父的事件 -> 父在使用组件用@自定义事件名=父的方法 (子把值带出来)

 

3. Vue 组件 data 为什么必须是函数?

每个组件都是 Vue 的实例,为了独立作用域,防止变量污染别人的变量

 

4. 讲一下组件的命名规范

给组件命名有两种方式(在Vue.Component/components时),

一种是使用链式命名"my-component"

一种是使用大驼峰命名"MyComponent"

因为要遵循W3C规范中的自定义组件名 (字母全小写且必须包含一个连字符),

避免和当前以及未来的 HTML 元素相冲突

你可能感兴趣的:(vue面试题,javascript,vue.js,开发语言)