基于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 相关文章推荐
JavaScript Perfection kill 测试及答案
Mar 23 Javascript
javascript常用的正则表达式实例
May 15 Javascript
jQuery 获取兄弟元素的几种不错方法
May 23 Javascript
谷歌浏览器不支持showModalDialog模态对话框的解决方法
Sep 22 Javascript
JavaScript中的索引数组、关联数组和静态数组、动态数组讲解
Nov 08 Javascript
javascript文本框内输入文字倒计数的方法
Feb 24 Javascript
JQuery实现的按钮倒计时效果
Dec 23 Javascript
js带闹铃功能的倒计时代码
Sep 29 Javascript
原生JS实现简单放大镜效果
Feb 08 Javascript
jQuery实现炫丽的3d旋转星空效果
Jul 04 jQuery
详解mpvue开发小程序小总结
Jul 25 Javascript
Vue传参一箩筐(页面、组件)
Apr 04 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安装攻略:常见问题解答(一)
2006/10/09 PHP
10个实用的PHP代码片段
2011/09/02 PHP
php HTML无刷新提交表单
2016/04/05 PHP
PHP会话操作之cookie用法分析
2016/09/28 PHP
ThinkPHP5.1的权限控制怎么写?分享一个AUTH权限控制
2021/03/09 PHP
JS的千分位算法实现思路
2013/07/31 Javascript
在javascript中执行任意html代码的方法示例解读
2013/12/25 Javascript
node.js中的fs.appendFile方法使用说明
2014/12/17 Javascript
javascript中的遍历for in 以及with的用法
2014/12/22 Javascript
浅谈setTimeout 与 setInterval
2015/06/23 Javascript
javascript+HTML5的Canvas实现Lab单车动画效果
2015/08/07 Javascript
JavaScript实现自动跳转文本功能
2017/05/25 Javascript
JS实现基于Sketch.js模拟成群游动的蝌蚪运动动画效果【附demo源码下载】
2017/08/18 Javascript
Angular js 实现添加用户、修改密码、敏感字、下拉菜单的综合操作方法
2017/10/24 Javascript
基于JSONP原理解析(推荐)
2017/12/04 Javascript
JS/HTML5游戏常用算法之追踪算法实例详解
2018/12/12 Javascript
webpack-url-loader 解决项目中图片打包路径问题
2019/02/15 Javascript
Vue开发之封装分页组件与使用示例
2019/04/25 Javascript
三步实现ionic3点击退出app程序
2019/09/17 Javascript
[47:03]完美世界DOTA2联赛PWL S3 access vs LBZS 第一场 12.20
2020/12/23 DOTA
Python统计列表中的重复项出现的次数的方法
2014/08/18 Python
解读! Python在人工智能中的作用
2017/11/14 Python
python之matplotlib学习绘制动态更新图实例代码
2018/01/23 Python
Python中出现IndentationError:unindent does not match any outer indentation level错误的解决方法
2020/04/18 Python
python实现把二维列表变为一维列表的方法分析
2019/10/08 Python
浅谈Python3实现两个矩形的交并比(IoU)
2020/01/18 Python
Pycharm plot独立窗口显示的操作
2020/12/11 Python
html5实现的便签特效(实战分享)
2013/11/29 HTML / CSS
HTML5 Canvas中绘制椭圆的4种方法
2015/04/24 HTML / CSS
Html5页面二次分享的实现
2018/07/30 HTML / CSS
来自世界各地的优质葡萄酒:VineShop24
2018/07/09 全球购物
Javascript如何发送一个Ajax请求
2015/01/26 面试题
银行实习鉴定
2013/12/13 职场文书
创业计划书怎样才能打动风投
2014/01/01 职场文书
工作能力自我评价2015
2015/03/05 职场文书
股东协议书范本2016
2016/03/21 职场文书