基于Layui自定义模块的使用方法详解


Posted in Javascript onSeptember 14, 2019

layui是一个极其不错的前端UI框架、是后端程序员的福音。总之如果你是一个后端开发者、如果你苦于你的界面“惨不忍睹”、选择layui来开发是个极好的选择。

之前的项目也有使用过layui、只是没有过多的关注其框架本身。对于项目上、拿来即用即可!

为什么要自定义模块呢?好处很多、比如可以大量重用代码......

我也是一个极其懒惰的人、总是想办法让代码可重用

根据layui官方的文档说明、首先第一步是要确定你要扩展的模块名称

我现在做的是登录功能、因此我的扩展模块名叫 login

使用layui.define()方法来扩展模块、当然模块中你也可以使用layui的其他方法、如下

layui.define('layer', callback);

在定义扩展模块的时候、我需要使用layui的layer模块、然后在回调函数中定义自己的方法

layui.define(["layer","jquery"],function (exports) {
  var obj = {
    login : function (url,data,$,targetUrl) {
      $.post(url,{code:data.code},function (res) {
       if (res.code&&res.code==400){
         layer.msg(res.msg,{icon:1},function () {
           window.location.href = targetUrl;
         });
       }else{
         layer.msg(res.msg,{icon:1},function () {
           window.location.href = targetUrl;
         });
       }
      });
    }
  }
  exports("login",obj);
});

上述代码中定义了一个login模块、以便在我登录的时候、不需要写过度的代码即可实现登录、让页面看起来更清爽【无任何杂质】

那么模块定义完了、怎么使用呢?

<script type="text/javascript">
  layui.config({
    base: '/static/admin/js/module/'//模块存放的目录
  }).use(['jquery','element','form','login'],function () {
    var $ = layui.jquery,
      form = layui.form,
      element = layui.element,
      login = layui.login;
    form.on("submit(subBtn)",function (data) {
      //获取表单的值
      var field = data.field;
      login.login("{:url('Login/doLogin')}",field,$,"{:url('Index/index')}");
      return false;
    });
  });
</script>

嗯、就这样、在登录的时候、直接将参数传递过去即可、在上述代码中url部分是使用TP的方法生成的、这里不用过多的研究【如果你是写前端的话】。

嗯、就这样、整个模块定义完成!!展示的效果如下

基于Layui自定义模块的使用方法详解

以上这篇基于Layui自定义模块的使用方法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
避免回车键导致的页面无意义刷新的解决方法
Apr 12 Javascript
range 标准化之获取
Aug 28 Javascript
javascript之典型高阶函数应用介绍
Jan 10 Javascript
javascript中简单的进制转换代码实例
Oct 26 Javascript
jquery实现带二级菜单的导航示例
Apr 28 Javascript
[原创]Bootstrap 中下拉菜单修改成鼠标悬停直接显示
Apr 14 Javascript
jQuery插件AjaxFileUpload实现ajax文件上传
May 05 Javascript
由浅入深剖析Angular表单验证
Jul 14 Javascript
第一次接触神奇的Bootstrap菜单和导航
Aug 01 Javascript
基于chosen插件实现人员选择树搜索自动筛选功能
Sep 24 Javascript
js变量声明var使用与不使用的区别详解
Jan 21 Javascript
使用原生javascript开发计算器实例代码
Feb 21 Javascript
解决layui的form里的元素进行动态生成,验证失效的问题
Sep 14 #Javascript
浅谈layui使用模板引擎动态渲染元素要注意的问题
Sep 14 #Javascript
Layui Form 自定义验证的实例代码
Sep 14 #Javascript
layui使用form表单实现post请求页面跳转的方法
Sep 14 #Javascript
解决layer弹出层的内容页点击按钮跳转到新的页面问题
Sep 14 #Javascript
layui自己添加图片按钮并点击跳转页面的例子
Sep 14 #Javascript
vue登录注册实例详解
Sep 14 #Javascript
You might like
php跨站攻击实例分析
2014/10/28 PHP
ThinkPHP公共配置文件与各自项目中配置文件组合的方法
2014/11/24 PHP
常见php数据文件缓存类汇总
2014/12/05 PHP
php检索或者复制远程文件的方法
2015/03/13 PHP
thinkPHP3.1验证码的简单实现方法
2016/04/22 PHP
php中使用websocket详解
2016/09/23 PHP
PHP超全局变量实现原理及代码解析
2020/09/01 PHP
jquery动态加载select下拉框示例代码
2013/12/10 Javascript
js中哈希表的几种用法总结
2014/01/28 Javascript
js调试工具console.log()方法查看js代码的执行情况
2014/08/08 Javascript
DOM基础教程之事件类型
2015/01/20 Javascript
js获取当前年月日-YYYYmmDD格式的实现代码
2016/06/01 Javascript
js实现控制textarea输入字符串的个数,鼠标按下抬起判断输入字符数
2016/10/25 Javascript
Bootstrap实现各种进度条样式详解
2017/04/13 Javascript
详解React 16 中的异常处理
2017/07/28 Javascript
es6在react中的应用代码解析
2017/11/08 Javascript
浅谈Vue数据绑定的原理
2018/01/08 Javascript
解决vue keep-alive 数据更新的问题
2018/09/21 Javascript
Vue初始化中的选项合并之initInternalComponent详解
2020/06/11 Javascript
vue修改Element的el-table样式的4种方法
2020/09/17 Javascript
[04:10]DOTA2英雄梦之声_第11期_圣堂刺客
2014/06/21 DOTA
[01:02:53]DOTA2上海特级锦标赛主赛事日 - 5 总决赛Liquid VS Secret第二局
2016/03/06 DOTA
零基础写python爬虫之爬虫框架Scrapy安装配置
2014/11/06 Python
Python中subprocess模块用法实例详解
2015/05/20 Python
Python二分查找详解
2015/09/13 Python
python读取和保存视频文件
2018/04/16 Python
Pytorch实现WGAN用于动漫头像生成
2021/03/04 Python
ASOS亚洲:ASOS Asia
2018/03/04 全球购物
ZWILLING双立人法国网上商店:德国刀具锅具厨具品牌
2019/08/28 全球购物
医学类导师推荐信范文
2013/11/19 职场文书
善意的谎言事例
2014/02/15 职场文书
陈欧广告词
2014/03/14 职场文书
学习雷锋演讲稿
2014/05/10 职场文书
计算机专业自荐信范文
2014/05/28 职场文书
2016年大学校运会广播稿件
2015/12/21 职场文书
师德师风心得体会(2016精选篇)
2016/01/12 职场文书