前端常见面试题(小程序)二十二

一:组件生命周期

created 组件实例化,但节点树还未导入,因此这时不能用setData

attached 节点树完成,可以用setData渲染节点,但无法操作节点

ready(不是onReady) 组件布局完成,这时可以获取节点信息,也可以操作节点

moved 组件实例被移动到树的另一个位置

detached 组件实例从节点树中移除.


生命周期 @ 小四



二:behavior 是?

定义和使用 behaviors

behaviors 是用于组件间代码共享的特性,类似于一些编程语言中的“mixins”或“traits”。每个 behavior 可以包含一组属性、数据、生命周期函数和方法,组件引用它时,它的属性、数据和方法会被合并到组件中,生命周期函数也会在对应时机被调用。每个组件可以引用多个 behavior 。 behavior 也可以引用其他 behavior 。behavior 需要使用 Behavior() 构造器定义。



三:全局生命周期



四:slot

在组件模板中可以提供一个 节点,用于承载组件引用时提供的子节点。


五:组件通信

*父传子

在子组件的组件标签上通过自定义属性的形式绑定数据或字符串

在子组件中通过properties对象进行属性的接收即可。

*子传父

在子组件中的methods对象中定义方法,在方法中通过this.triggerEvent({})方法,完成事件触发

在子组件标签上绑定(例:bind:在this.triggerEvent定义的事件名称="回调函数" ),在this.triggerEvent定义的事情名称,最后在回调函数中完成逻辑处理。

*兄弟

子传父    父作为中转   父传子



六:scroll-view



七:文件类型



八:路由传参



九:template



十 :事件



十 一:onBreachBottom



十二:授权流程

***微信授权机制,现版本和早起的版本有所差别,但是只是授权流程思路上的小小差异,整体并无太大变化。

早期版本是直接通过wx.getUserInfo()API来弹出微信授权窗口“询问是否授权”,主动弹出授权窗口太过灵活对于用户而言并非良好的体验,因此现版本修改为了必须通过button组件,让用户去主动触发才能弹出授权窗口,直接调用wx.getUserInfo()已不再出现授权弹窗

-----

wx.getSetting(Object object) 判断是否已授权 - 详情参考官网

wx.getUserInfo(Object object) 获取授权后的用户信息 - 详情参考官网

button 通过button组件询问用户是否授权 - 详情参考官网



十三:小程序之间如何跳转

你可能感兴趣的:(前端常见面试题(小程序)二十二)