使用mini-define实现前端代码的模块化管理

网络编程 发布日期:2024/10/8 浏览次数:1

正在浏览:使用mini-define实现前端代码的模块化管理

mini-define

依据require实现的简易的前端模块化框架。如果你不想花时间学习require.js,也不想翻看长篇的cmd/amd规范,那么这个mini-define就是你不错的选择。如果你之前用过sea.js或require.js那么mini-define更加高效,更加轻量,更加易用。项目地址:github

用法

首先定义模块

定义模块

一:定义模块用define函数

1.1 根据是否有依赖,有两种情况:

1.1.1:没有依赖的模块

复制代码 代码如下:
        define('id',function(){
            // put your code here
        });

1.1.2:有依赖的模块

复制代码 代码如下:
        define('id',['modeA','modeB'],function(A,B){
            // put your code here
        });

1.2 根据是否需要返回处理结果给外部使用,又可以分两种情况:

1.2.1有返回对象:

复制代码 代码如下:
            define('id',function(){
                return {
                    // put your code here
                }
            });

1.2.2 没有返回对象

复制代码 代码如下:
            define('id',function(){
                // put your code here
            });

二: 调用模块用require()函数

2.1 根据请求的模块数,可以有两情况:

    2.1.1.调用单个模块

        require('modeId')

    2.1.2.调用多个模块
            require(['modeA','modeB']);
2.2 根据是否有回调处理,又可以分为两种情况:

    2.2.1 有回调处理函数

复制代码 代码如下:
            require('modeId',function(mode){
                //put your code here
            });

            require(['modeA','modeB'],function(A,B){
                //put your code here
            });

    2.2.2 没有回调处理
            require('modeId');
然后在index.html页面依次引用所需模块

复制代码 代码如下:
<!--核心模块-->
<script src="/UploadFiles/2021-04-02/require.js"> <!--用于演示的模块-->
<script src="lib/main.js"> <script src="/UploadFiles/2021-04-02/config.js"> <script src="lib/init.js">

最后就是用你喜欢的方式对lib目录进行合并压缩,生成一个min.js文件。 在发布应用的时候,相应的index.html也需要调整一下:

复制代码 代码如下:
<script src="/UploadFiles/2021-04-02/min.js">

优点:

相对于seajs.js或原版的require.js来说,加注释才一百来行的代码用轻量来形容都显胖,完全是骨感。
完全没有什么高深的内容,也没有复杂的技巧,几乎是零学习成本。

一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?