js封装简单格式

js封装组件等基本格式

在对js进行封装可以参考下面的格式

var tabChanges={
    fn:{
        changeTabs:function () {
           console.log("ddd");
        },
        bindEvent:function () {
            this.changeTabs();
        }
    },
    init:function (options) {
        // 设置默认参数
        var defaults={
            //切换目录父级,不可为空
            parent:undefined,
            //切换目录,不可为空
            parentContent:undefined,
            //切换文本父级,不可为空
            child:undefined,
            //切换文本,不可为空
            childContent:undefined,
            //选中的样式
            parentActive:undefined,
            childActive:undefined
        }
        for (var i in defaults) {
            this[i] = options[i] || defaults[i];
        }
        if(this.parentContent.length!=this.childContent){
            console.warn('不能正确进行配对');
            return;
        }
        if(!this.parentContent|| !this.parentContent||!this.childContent|| !this.parentActive|| !this.childActive){
            console.warn('参数错误');
            return;
        }
        this.bindEvent();
    },
    create:function (options) {
        this.init.prototype = this.fn;
        return new this.init(options);
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,327评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,204评论 4 61
  • 前言 GitHub地址:https://github.com/guofei1219 背景 统计新渠道进件数量 Sp...
    MichaelFly阅读 8,426评论 0 5
  • 金融涉及到货币、信用和银行三个范畴,以及三者之间相互联系的内在关系。 【思考:(1)互联网金融的要素中,货币不再是...
    吴海燕_YuBin阅读 2,844评论 0 2
  • 在渝北区东南部有一个铁山坪,这铁山坪的后山有个公园,这个公园绵延覆盖了23平方公里的范围,郁郁葱葱的森林,烟波浩渺...
    熊二舅阅读 3,828评论 0 0