其它


mip提供一些功能,以解決在元件中遇到的各種問題和提升開發效率。

prerenderElement

提前渲染 mip 元素。

如果元素不在 viewport 內,強制觸發元素的 viewportCallback firstInviewCallback 方法。

var element = document.getElementById('mip-test');
MIP.prerenderElement(element);

event-action

由於mip不允許使用附加的JS程式碼。所以提供了一套事件action機制,可以透過dom屬性觸發某個mip元素的自訂事件。

html:

<mip-test id="test"></mip-test>

<div on="tap:test.custom_event">不带参数</div>

<div on="tap:test.custom_event(test_button)">带参数</div>

<div on="tap:test.custom_event(test_button) tap:test.custom_event(test_button1)">多个事件</div>

JS:

// mip-test.js
define(function (require) {
    var customEle = require('customElement').create();
    customEle.prototype.build = function () {
        // 绑定事件,其它元素可通过 on="xxx" 触发
        this.addEventAction("custom_event", function (event/* 对应的事件对象 */, str /* 事件参数 */) {
            console.log(str); // undefined or 'test_button' or 'test_button1'
        });
    };
    return customEle;
});