Blame view

node_modules/vue/src/platforms/weex/util/index.js 1.25 KB
aaac7fed   liuqimichale   add
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
  /* @flow */
  declare var document: WeexDocument;
  
  import { warn } from 'core/util/index'
  
  export const RECYCLE_LIST_MARKER = '@inRecycleList'
  
  // Register the component hook to weex native render engine.
  // The hook will be triggered by native, not javascript.
  export function registerComponentHook (
    componentId: string,
    type: string, // hook type, could be "lifecycle" or "instance"
    hook: string, // hook name
    fn: Function
  ) {
    if (!document || !document.taskCenter) {
      warn(`Can't find available "document" or "taskCenter".`)
      return
    }
    if (typeof document.taskCenter.registerHook === 'function') {
      return document.taskCenter.registerHook(componentId, type, hook, fn)
    }
    warn(`Failed to register component hook "${type}@${hook}#${componentId}".`)
  }
  
  // Updates the state of the component to weex native render engine.
  export function updateComponentData (
    componentId: string,
    newData: Object | void,
    callback?: Function
  ) {
    if (!document || !document.taskCenter) {
      warn(`Can't find available "document" or "taskCenter".`)
      return
    }
    if (typeof document.taskCenter.updateData === 'function') {
      return document.taskCenter.updateData(componentId, newData, callback)
    }
    warn(`Failed to update component data (${componentId}).`)
  }