layui入门那些事儿


一、layui入门初接触 —— 文档为本

官方文档说明可以点击后面链接? layui开发使用文档。同时官方还给出了layer的独立模块?layer弹出层插件

初次了解layui是在2017年,在维护一个老系统时,由于当时需要一个弹框提示作为作业调度系统的展示提醒(Quartz.Net),在网上一波查找,就被layer清新脱俗的外表给吸引了。可对突如其来的 layui 和 layer 两个如此相近的名词给整懵了。起初对模块的理解不清晰,以为 layui = layer,致使踩坑不断,bug连连。

由于没有认真研读官方文档,导致对layui自带的jquery充耳不闻,以至于引入其他版本jquery,还是未参考官方的引入方式,不过最终还是实现了功能,只是中间的过程非常的曲折。由此可得,

【文档非常重要】!important 错误代码就不示范了,免得【误人子弟】

二、layui再回首 —— layuiCMS

再次接触已是2018年,而这次相遇的却是因为 layuiCMS 这次还是因为他的清新脱俗,让我再次沦陷。什么,肤浅?不存在,不存在的。始于才华,忠于技术,这就是我们技术人的品质嘛。

layuiCMS的整体设计核心部分为bodyTab.js与index.js,目录如下图:
layuiCMS核心设计
以及引入的layui的整体模块包,最为常用的就是layui.css和layui.js,目录如图所示:
layui模块包
layuiCMS在这里不详谈,里面的功能还是比较全面,有兴趣的可以直接点击这儿layuiCMS

今天我们就只是简单说说layui模块的使用,通常情况下只需导入以下两个文件即可。

导入一个layui.css代码和layui.js代码:

	<link rel="stylesheet" href="/layui/css/layui.css" media="all" />
	<script type="text/javascript" src="/layui/layui.js"></script>
栗子1:模块化layer的简易弹框
<script src="/layui/layui.js"></script>
//layui的日常使用
layui.use(['layer', 'jquery'], function () {
	var layer = layui.layer
        , $ = layui.jquery;
	//通过调用layer模块下的对象方法来进行弹框提示
	//以下语句分别执行
	layer.alert('hello world');
	layer.msg('hello world');
});

以上语句分别执行的结果如图:
layer.alert('hello world'); layer.msg('hello world');

栗子2:非模块化用法

如果使用非模块化的调用,则是引入 layui.all.js 文件,但官方给出的建议是不推荐,所以,这里只做参考。

    <script src="../layui/layui.all.js"></script>  
    <script>
    ;!function(){
      //无需再执行layui.use()方法加载模块,直接使用即可
      var form = layui.form
      ,layer = layui.layer;
      
      //…
    }();
    </script> 
栗子3:自定义模块layui.define

自定义模块于根目录 js/modules/,文件名 tabs.js,定义两个方法set和func,注:exports中的模块名一定要和文件名一样(官方未给出明确的说法,但仔细琢磨应该是这么回事儿)

//自定义模块于根目录 js/modules/,文件名 index.js
layui.define(["jquery", "layer"], function (exports) {
    var $ = layui.$
    	, layer = layui.layer
        , Tab = function () {
            this.tabConfig = {
                openTabNum: undefined  //设置一个参数,用于初始传值全局变量
            }
        };
    //参数设置
    Tab.prototype.set = function (option) {
        var _this = this;
        $.extend(true, _this.tabConfig, option);
        return _this;
    };
    //方法
    Tab.prototype.func = function (Info) {
        layer.alert(Info);
    };

    var tabs = new Tab();
    //把模块往外抛,注意:模块名必须和use时的模块名一致
    exports('tabs', function (option) {
        return tabs.set(option);
    });
});

调用 js/modules/ 目录下的 tabs.js 模块

<script src="/layui/layui.js"></script>
<script type="text/javascript">
layui.config({
    base: '/js/modules/' //你存放新模块的目录,注意,不是layui的模块目录
}).use("tabs") //加载入口
//使用自定义模块
layui.use(['tabs'],function(){
	var tab = layui.tabs({
		openTabNum: "50"
	});
	//调用模块方法
	tab.func("模块定义成功");
}); 
</script>

结果:
自定义模块layui.define方法调用结果
明白了以上这些个操作,那你对layui就已经是有了入门水平。接下来要做的就是对照官方的文档来进行内置模块的调用。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值