wuxw
2019-12-01 49b5dba003ff2b03d40630982ea637df2cfccab1
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
/**
 初始化vue 对象
 @param vc vue component对象
 @param vmOptions Vue参数
 **/
(function (vc, vmOptions) {
    console.log("vmOptions:", vmOptions);
    vc.component = new Vue(vmOptions);
})(window.vc, window.vc.vmOptions);
 
 
/**
 vc监听事件
 **/
(function (vc) {
    /**
     事件监听
     **/
    vc.on = function (_componentName, _value, _callback) {
 
        vc.component.$on(_componentName + '_' + _value,
            function (param) {
                if (vc.debug) {
                    console.log("监听ON事件", _componentName, _value, param);
                }
                _callback(param);
            }
        );
    };
 
    /**
     事件触发
     **/
    vc.emit = function (_componentName, _value, _param) {
        if (vc.debug) {
            console.log("监听emit事件", _componentName, _value, _param);
        }
        vc.component.$emit(_componentName + '_' + _value, _param);
    };
 
    /**
     事件监听
     **/
    vc.on = function (_namespace, _componentName, _value, _callback) {
 
        vc.component.$on(_namespace + "_" + _componentName + '_' + _value,
            function (param) {
                if (vc.debug) {
                    console.log("监听ON事件", _namespace, _componentName, _value, param);
                }
                _callback(param);
            }
        );
    };
 
    /**
     事件触发
     **/
    vc.emit = function (_namespace, _componentName, _value, _param) {
        if (vc.debug) {
            console.log("监听emit事件", _namespace, _componentName, _value, _param);
        }
        vc.component.$emit(_namespace + "_" + _componentName + '_' + _value, _param);
    };
 
})(window.vc);
 
/**
 * vue对象 执行初始化方法
 */
(function (vc) {
    vc.initEvent.forEach(function (eventMethod) {
        eventMethod();
    });
    vc.initMethod.forEach(function (callback) {
        callback();
    });
    vc.namespace.forEach(function (_param) {
        vc[_param.namespace] = vc.component[_param.namespace];
    });
})(window.vc);