前端面试--常见问题合集

160 阅读2分钟

封装过什么组件?

通用性的标题栏 样式一样 内容不一样的情况 

tree组件  通过render的方式 进行自定义 添加 删除的操作

组件可采用solt来进行html端的动态扩展 自定义一些符合自己业务逻辑的展示方式

vue的隔辈传值?

父组件给子组件传值的场景:
prop属性
相当于一个插件  需要传入特定参数

一个插件里面又包含另一个插件 都是可以通过最外层传参 去影响功能,样式  所以需要隔代传值


隔辈传值的应用场景:

vuex,evenBus,
$childern 和 $attr 实现隔代传值 (如果上一级没有匹配到,会自动传递给下一级)
<template>
    <gParent>
      <parent>
        <son>
            <child>
            </child>
        </son>
      </parent>
    </gParent> 
</template>
<script>
   export default {
       name:'',
       data:{
           attr:{
           
           },
           children:{
           
           
           }
       },
       
   
   
   
   } 
    


</script>

vuex的调用方式?

四大金刚: state,mutation,action,module

this.$state.apple

this.$state.commit('mutationMethod',params)

//action的方法也是调用mutation的方法 this.$state.disPatch('actionMethod',params)

10000条数据一次性渲染 (虚拟dom,虚拟列表)

懒加载 //让数据每次返回的少 首页加载快 但是下拉有延迟  dom的重绘操作频繁
虚拟列表 每次只显示中间区域的dom元素 并不会给html产生多dom的负担

html5调用客户端 相机之类的

不会

node如何开发cli工具

cli是command-line interface的缩写,即命令行工具,常用的*vue-cli*, *create-react-app*, *express-generator* 等都是cli工具。

juejin.cn/post/684490…

css移动端 1px像素

浏览器的字体12px  1rem = 16px
根据页面的font-size去动态的计算 62.5% 

100/16 = 62.5
16*62.5% = 10px
1rem = 10px

如何启动一个web端的node服务

原生 require("http")

http.createServer().listen("8080")

express

vue指令的用法和作用

node是如何启动vue的

canvas如何实现的水印

git的工作流 (测试环境 上线环境 怎么划分的)

es6 proxy

@ref

\

meta标签的作用

\

NAN 在js 如何会出现

\

标签语义化的好处

\

vue2.0 definepropty 是怎么优化数据的更新

\

小程序热加载和冷启动有什么区别

\

状态码 403

\

typeof

\

vue生命周期 各钩子节点的作用 eg:data赋值在哪个阶段

\

null { } 输出

\

十个接口合并成一个 怎么说服后端

\

webpack output r 和打包后发布部署

\

兄弟组件 隔辈组件的传值

\

es6 promise 等的区别

\

es6数组操作的方法

for 和 foreach的区别 map和foreach的区别

\

typescript

\

http tcp udp三次握手