对Layer UI 模块化的用法详解


Posted in Javascript onSeptember 26, 2019

此文章适合入门的同学查看,之前因为项目的原因,在网上找了一套Layer UI做的后台管理系统模板,完全不懂LayUI里面的JS用法,看了官方文档和其它资料后才明白怎么去实现模块化这个例子,但是还是感觉网上的资料写得不够清晰,我尝试把自己的想法写出来,大家可以一起学习

1.首先从简单的入手

加载所需模块

方法:layui.use([mods], callback)

引用了Layui.js后

往js文件写入

layui.use(['layer'],function(){ [mods]加载的模块,现在加载的是弹出层
 var layer = layui.layer; 弹出层模块
 layer.msg('风继续吹')
})

2.定义模块

方法:layui.define([mods], callback)

layui.define(['layer'], function(exports){
 //do something
 
 exports('demo', function(){
  alert('Hello World!');
 });
});

3.全局配置

方法:layui.config(options)

layui.config({
 base: 'js/' //你存放新模块的目录,注意,不是layui的模块目录
}).use('index'); //加载入口

来到这一步,也许你还不明白,但是看完以下这个例子,你就会清晰多了

1.新建一个js文件夹和一个index.html,再加上官方下载的layui文件

在js文件夹里面建立index.js(注意这个文件的名称)

目录现在是这样的

1

2.再进行全局配置

在index.html中写

layui.config({
 base:'js/' //你存放新模块的目录,注意,不是layui的模块目录
  }).use(['index','layer'],function(){ //加载入口 上述的 index 即为你 js/ 目录下的 index.js,看看官方的文件结构,如下图,index.js相当于就成为了新的文件模块(与下文提的模块不一样)
 var layer = layui.layer;
 layer.msg('leslie world');
})

2

不仅可以指定我们的index.js模块文件模块(),还可以引用内置的模块,比如laydate,layer等等

3.自定义模块

在index.js中

layui.define(['layer'],function(exports){ //引用layer模块
 var layer = layui.layer;
 exports('index',function(){ //注意,这里是模块输出的核心,模块名必须和use时的模块名一致,这里的index就是在index.html use的模块
 layer.msg('leslie cheung');
 })
})

现在呢,我们已经定义了新的模块 index,怎么去运行该模块呢

4.最后使用热加载模块layui.use()

继续在index.js写

layui.use(['index'],function(){
 layui.index() //调用index这个自定义模块
})

最后总结一下,通俗易懂点来讲,进行全局配置(layui.config):创建的这个index.js是我们业务所需要的文件模块,类似于layer,laydate那些结构的;

自定义模块:接着我们发现业务的需求,需要进一步在index.js去写自己的小模块,于是呢通过define自定义模块;

热加载模块:内置模块和自定义模块怎么使用,通过layui.use()去加载

好了,以上就是我个人的理解,如有错误,欢迎指出。希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
一些易混淆且不常用的属性,希望有用
Jan 29 Javascript
解决3.01版的jquery.form.js中文乱码问题的解决方法
Mar 08 Javascript
Ext修改GridPanel数据和字体颜色、css属性等
Jun 13 Javascript
JavaScript判断DIV内容是否为空的方法
Jan 29 Javascript
js剪切板应用clipboardData实例解析
May 29 Javascript
Bootstrap表单简单实现代码
Mar 06 Javascript
javascript 作用于作用域链的详解
Sep 27 Javascript
Angular整合zTree的示例代码
Jan 24 Javascript
webpack4之如何编写loader的方法步骤
Jun 06 Javascript
深入分析jQuery.one() 函数
Jun 03 jQuery
js+audio实现音乐播放器
Sep 13 Javascript
微信小程序onShareTimeline()实现分享朋友圈
Jan 07 Javascript
vue源码中的检测方法的实现
Sep 26 #Javascript
IntelliJ IDEA编辑器配置vue高亮显示
Sep 26 #Javascript
layer.open 子页面弹出层向父页面传输数据的例子
Sep 26 #Javascript
Vue项目环境搭建详细总结
Sep 26 #Javascript
layer.open 获取不到表单信息的解决方法
Sep 26 #Javascript
layui: layer.open加载窗体时出现遮罩层的解决方法
Sep 26 #Javascript
layUI使用layer.open,在content打开数据表格,获取值并返回的方法
Sep 26 #Javascript
You might like
PHP一些有意思的小区别
2006/12/06 PHP
提高PHP编程效率的53个要点(经验小结)
2010/09/04 PHP
PHP读取、解析eml文件及生成网页的方法示例
2017/09/04 PHP
PHP使用pdo连接access数据库并循环显示数据操作示例
2018/06/05 PHP
js利用Array.splice实现Array的insert/remove
2009/01/13 Javascript
JavaScript Event学习第十章 一些可替换的事件对
2010/02/10 Javascript
JavaScript判断窗口是否最小化的代码(跨浏览器)
2010/08/01 Javascript
使用javascript实现监控视频播放并打印日志
2015/01/05 Javascript
自己动手手写jQuery插件总结
2015/01/20 Javascript
JavaScript实现自动消除按钮功能的方法
2015/08/05 Javascript
jquery日历插件datepicker用法分析
2016/01/22 Javascript
打造自己的jQuery插件入门教程
2016/09/23 Javascript
JavaScript模板引擎Template.js使用详解
2016/12/15 Javascript
JavaScript 巧学巧用
2017/05/23 Javascript
javascript字体颜色控件的开发 JS实现字体控制
2017/11/27 Javascript
vue.js分页中单击页码更换页面内容的方法(配合spring springmvc)
2018/02/10 Javascript
看看“疫苗查询”小程序有温度的代码
2018/07/31 Javascript
js中null与空字符串""的区别讲解
2019/01/17 Javascript
vue webpack重写cookie路径的方法
2019/07/10 Javascript
vue-cli3.0实现一个多页面应用的历奇经历记录总结
2020/03/16 Javascript
从零开始用webpack构建一个vue3.0项目工程的实现
2020/09/24 Javascript
python实现图书管理系统
2018/03/12 Python
pytorch构建网络模型的4种方法
2018/04/13 Python
使用Python和xlwt向Excel文件中写入中文的实例
2018/04/21 Python
详解Python如何生成词云的方法
2018/06/01 Python
解决python 上传图片限制格式问题
2019/10/30 Python
兰蔻英国官网:Lancome英国
2019/04/30 全球购物
俄罗斯隐形眼镜和眼镜在线商店:Cronos
2020/06/02 全球购物
法雷奥SQA(electric)面试问题
2016/01/23 面试题
医学类个人求职信范文
2014/02/05 职场文书
公立医院改革实施方案
2014/03/14 职场文书
文明美德伴我成长演讲稿
2014/05/12 职场文书
市场营销专业应届生自荐信
2014/06/19 职场文书
新学期标语
2014/06/30 职场文书
投资公司董事长岗位职责
2015/04/16 职场文书
爱心捐书倡议书
2015/04/27 职场文书