什么是百度MIP

MIP(Mobile Instant Pages - 移动网页加速器)主要用于移动端页面加速

官网参考:https://www.mipengine.org/doc/00-mip-101.html

百度mip不允许自己定义js,所以需要封装再去引用,具体步骤如下:

一、安装及环境部署

具体安装步骤可参考:http://www.cnblogs.com/mipengine/p/mip_cli_1_install.html

1、依赖安装node.js

2、安装git

3、安装mip-cli

二、创建mip页面

我这里是已经有了mip页面了,具体mip页面规则可以参考:http://www.cnblogs.com/mipengine/p/mip_cli_2_page.html

三、创建新组件或者文件配置

我是直接在桌面新建一个文件夹了,mip页面放到里面,点击右键Git bash here

注:在这之前,对你页面要进行逻辑的那一部分给包裹起来。如:<mip-alert></mip-alert>。就相当于后面的创建组件以后,要在body中引入的东东

1、在 mip-extensions 仓库中创建新的组件

$ mip addelement mip-alert

mip-alert根据自己需求来取,与页面包裹的标签取名最好一致,请移步上面的注意事项

建完后会多出绿色的几个文件

2、开发组件

mip-alert.js用于定义组件,这个里面写js噢。可参考下方示例。

define(function (require) {

    var customElement = require('customElement').create();

    customElement.prototype.firstInviewCallback = function () {

            var element = this.element;

            var text = element.getAttribute('alert-text') || ' 默认 alert 内容 ';

            element.addEventListener('click', function(){

                alert(text);

            });

    };

    return customElement;

});

如果你要用jquery,下面是代码

define(function (require) {

    var $ = require('zepto');

    var customElement = require('customElement').create();

    customElement.prototype.firstInviewCallback = function () {

        var element = this.element;//这个element相当于你页面包的那一层

        $(element).find('video').on('play', function () {

            $('.ef').hide();

        });

    };

    return customElement;

});

参考链接:http://www.cnblogs.com/mipengine/p/mip_cli_3_extension.html

其他的文件:自行参考修改

mip-alert.less用于定义组件样式,可参考 mip-fixed/mip-fixed.less。

README.md用于说明组件用法,可参考 mip-fixed/README.md。

package.json用于记录组件版本及开发者信息,可参考 mip-fixed/package.json。

3、预览调试组件

$ mip server

打开地址可以访问了

四、登录平台上传组件

参考链接:http://www.cnblogs.com/mipengine/p/extension_platform.html

那你的组件压缩,注意必须是zip压缩包哦,上传之后会审核,组件通过审核后,会在下一个上线窗口进行上线,组件上线之后,在本地可以引入上线后的组件进行验证。

在你的mip页面中引入线上地址就好了

MIP组件开发 自定义js组件开发步骤的更多相关文章

  1. #003 React 组件 继承 自定义的组件

    主题:React组件 继承 自定义的 组件 一.需求说明 情况说明: 有A,B,C,D 四个组件,里面都有一些公用的逻辑,比如 设置数据,获取数据,有某些公用的的属性,不想在 每一个 组件里面写这些属 ...

  2. 22Flutter中的常见的按钮组件 以及自定义按钮组件

    /* Flutter中的常见的按钮组件 以及自定义按钮组件 一.Flutter中的按钮组件介绍 Flutter里有很多的Button组件,常见的按钮组件有:RaisedButton/FlatButto ...

  3. Flutter 中的常见的按钮组件 以及自定义按钮组件

    Flutter 里有很多的 Button 组件很多,常见的按钮组件有:RaisedButton.FlatButton. IconButton.OutlineButton.ButtonBar.Float ...

  4. 基于Django Form源码开发自定义Form组件

    import copy import re class ValidateError(Exception): def __init__(self, detail): self.detail = deta ...

  5. 软件开发(js+java开发)的启发

    发现了个很重要的意义 1,一个对象,既包含被监听的参数,也包括监听处理本身 2,基于1的开发模式 3,在函数中定义监听器 4,1)高内聚: 统一面向对象,一个功能一个对象 不同对象不互相调用,不互相引 ...

  6. Android Studio开发基础之自定义View组件

    一般情况下,不直接使用View和ViewGroup类,而是使用使用其子类.例如要显示一张图片可以用View类的子类ImageView,开发自定义View组件可分为两个主要步骤: 一.创建一个继承自an ...

  7. SSIS自定义数据流组件开发(血路)

    由于特殊的原因(怎么特殊不解释),需要开发自定义数据流组件处理. 查了很多资料,用了不同的版本,发现各种各样的问题没有找到最终的解决方案. 遇到的问题如下: 用VS2015编译出来的插件,在SSDTB ...

  8. 浅尝Spring注解开发_自定义注册组件、属性赋值、自动装配

    Spring注解开发 浅尝Spring注解开发,基于Spring 4.3.12 包含自定义扫描组件.自定义导入组件.手动注册组件.自动注入方法和参数.使用Spring容器底层组件等 配置 @Confi ...

  9. 基于React.js网页版弹窗|react pc端自定义对话框组件RLayer

    基于React.js实现PC桌面端自定义弹窗组件RLayer. 前几天有分享一个Vue网页版弹框组件,今天分享一个最新开发的React PC桌面端自定义对话框组件. RLayer 一款基于react. ...

随机推荐

  1. PLSQL Developer中几个功能

    1,登录后默认自动选中My Objects 默认情况下,PLSQL Developer登录后,Brower里会选择All objects,如果你登录的用户是dba,要展开tables目录,正常情况都需 ...

  2. Android 环信聊天头像昵称显示解决方案

    从消息扩展中获取昵称和头像 昵称和头像的获取:把用户基本的昵称和头像的URL放到消息的扩展中,通过消息传递给接收方,当收到一条消息时,则能通过消息的扩展得到发送者的昵称和头像URL,然后保存到本地数据 ...

  3. centos 7使用yum安装docker容器

    使用yum命令即可安装 yum install docker 安装完成后,使用下面的命令来启动 docker 服务,并将其设置为开机启动: [root@localhost ~]# systemctl ...

  4. Android数字签名解析(一)

     一.数字签名概述 所谓"数字签名"就是通过某种password运算生成一系列符号及代码组成电子password进行签名,来取代书写签名或印章. 数字签名有两种功效:一是能确定消息 ...

  5. Maximum Profit

    Maximum Profit You can obtain profits from foreign exchange margin transactions. For example, if you ...

  6. Pod常使用命令

    pod 命令汇总 # 创建默认的 Podfile $ pod init # 第一次使用安装框架 $ pod install # 安装框架,不更新本地索引,速度快 $ pod install --no- ...

  7. HTTP请求方式中8种请求方法(简单介绍)

    简单介绍 HTTP是超文本传输协议,其定义了客户端与服务器端之间文本传输的规范.HTTP默认使用80端口,这个端口指的是服务端的端口,而客户端使用的端口是动态分配的.当我们没有指定端口访问时,浏览器会 ...

  8. 【luogu P3385 负环】 模板

    题目链接:https://www.luogu.org/problemnew/show/P3385 SPFA判负环. 这个题必须卡一卡才过得去. 按理说对于一个负环点应当是入队 > n次. 但是这 ...

  9. 数据库优先生成EF CRUD演示

    ①准备我们的数据库: Northwind ②新建 实体数据模型,由数据库优先创建 ③创建控制器,这里我们只针对了Customers这张表做演示,实际会复杂的多 注:你可以把上面两步合成一步来写,创建控 ...

  10. data-ng-model 指令

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...