非模块化和模块化的区别是

  •     非模块化不用每次都调用layui.use([],fun...)引入对应模块,引入的JS是/layui/layui.all.js
  •     模块化必须每次都调用layui.use([],fun...)引入对应模块,引入的JS是/layui/layui.js  (推荐这种,但是写起来不太方便)

  

  • /layui/layui.js会包含/layui/layui.js的所有功能,引入这个JS会加载所有的模块,无需自动引入模块,会使layui失去模块化的意义,但是写起来确实方便多了。因此layui官方推荐使用模块化的方式。

1.模块化的使用:

注意:引入的JS是:  /layui/layui.js

遵循 layui 的模块规范建立一个入口文件,并通过 layui.use() 方式来加载该入口文件

例如:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>模块化的使用</title>
<link rel="stylesheet" href="./layui/css/layui.css"> <!--引入这个JS-->
<script type="text/javascript" src="./layui/layui.js"></script> </head>
<body> <script>
/*必须使用这个方法先引用对应的模块*/
layui.use(['layer'],function () {
var layer = layui.layer;
layer.alert("xxxxxxxxxxxxxxxxxxxxxxxx")
})
</script> </body>
</html>

补充:为了方便使用可以使用下面方法引入:

function deleteDictBatch(){
var form,layer;
layui.use(['form','layer'],function () {
form = layui.form;
layer=layui.layer;
});
//获取选中的元素的个数
var length_1 = $("[name='dictionaryCheckbox']:checked").length;
//1.如果选中的个数为0,直接退出函数,提示选择字典删除
if(length_1 ==0 ){
layer.alert("请选中需要删除的字典")
return ;
}
//如果有元素需要被删除
else{
if(!confirm("您确认要删除下列字典?")){//点取消也退出函数
return;
}
//第二种方式,以数组的方式去提交。后台用string接收
var values = [];
$("[name='dictionaryCheckbox']:checked").each(function (i) {//i代表索引
values[i]=$(this).val();
})
$.post(contextPath+'/dictionary/deleteDictBatch.do',{dictionaryIds:values.toString()},function(response){
alert(response);
if(response == "删除成功"){
getDictionaryTree();//查询字典树
getDictionaryFY();//分页查询字典信息
}
},'text')
//删除的业务逻辑
}
}

也可以将layer和form作为全局变量引入使用:

/**
* @author: qlq
* @time: 9:31
* @description: 添加培养方案的JS
*/ /**
* 一次性自调函数初始化两个全局变量
*/
var lyer,form;
(function () {
layui.use(['layer','form'],function () {
layer=layui.layer,form=layui.form;
})
})(); /**
* 页面加载完成后执行一些函数
*/
$(function () {
layer.msg("消息框")
}); /**********S *****************/

2.非模块化的使用:

注意:引入的JS是  /layui/layui.all.js

 采用“一次性加载”的方式。当你采用这样的方式时,你无需再通过 layui.use() 方法加载模块,直接使用即可,如:

例如:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>非模块化的使用方法</title> <link rel="stylesheet" href="./layui/css/layui.css"> <!--引入这个JS-->
<script type="text/javascript" src="./layui/layui.all.js"></script>
</head>
<body> <script>
var layer = layui.layer;
layer.alert("xxxxxxxxxxxxxxxxxxxxxxxx")
</script>
</body>
</html>

3.补充

1.在模块法中不能直接使用非模块化的方法

例如:(下面引入是模块化JS却使用非模块化方法报错)

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>模块化的使用</title>
<link rel="stylesheet" href="./layui/css/layui.css"> <!--引入这个JS-->
<script type="text/javascript" src="./layui/layui.js"></script> </head>
<body> <script>
var layer = layui.layer;
layer.alert("xxxxxxxxxxxxxxxxxxxxxxxx")
</script> </body>
</html>

2.非模块化中可以使用模块化

例如:下面正常运行,但是没必要

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>非模块化的使用方法</title> <link rel="stylesheet" href="./layui/css/layui.css"> <!--引入这个JS-->
<script type="text/javascript" src="./layui/layui.all.js"></script>
</head>
<body> <script>
layui.use(['layer'],function () {
var layer = layui.layer;
layer.alert("xxxxxxxxxxxxxxxxxxxxxxxx")
})
</script>
</body>
</html>

3.同时引入模块化和非模块化的话可以使用非模块化方法,但是非模块化的JS必须在模块化之后引入

例如:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>模块化的使用</title>
<link rel="stylesheet" href="./layui/css/layui.css"> <!--引入这个JS-->
<script type="text/javascript" src="./layui/layui.js"></script>
<script type="text/javascript" src="./layui/layui.all.js"></script> </head>
<body> <script>
/*必须使用这个方法先引用对应的模块*/
var layer = layui.layer;
layer.alert("xxxxxxxxxxxxxxxxxxxxxxxx")
</script> </body>
</html>

layui的模块化和非模块化使用的更多相关文章

  1. webpack处理非模块化的几方法

    webpack处理非模块化文件有几方法,主要分为外链和webpack打包二种情况: 一.使用CDN外部链接的方法 官网文档External: https://webpack.github.io/doc ...

  2. webpack打包非模块化js

    本文主要记录了非模块化js如何使用webpack打包 模块化打包实现方式 webpack是模块打包工具,通过入口文件递归遍历其依赖图谱,绝对是打包神器. bar.js export default f ...

  3. Vue导入非模块化的第三方插件功能无效解决方案

    一.问题: 最近在写vue项目时,想引入某些非模块化的第三方插件时,总是发现会有报错.且在与本地运行插件测试对比时发现插件根本没有注入到jQuery中(console.log($.fn)查看当前jq有 ...

  4. layui树形表格支持非异步和异步加载

    layui树形表格支持非异步和异步加载. 仓库地址:https://gitee.com/uniqid/ 使用示例如下: <div class="uui-admin-common-bod ...

  5. 总结Vue第三天:模块化和webpack模块化打包:

    总结Vue第三天:模块化和webpack模块化打包: 一.❀ 模块化 [导入import-----导出export] 1.为什么需要模块化? JavaScript 发展初期,代码简单地堆积在一起,只要 ...

  6. 模块化和webpack模块化打包

    模块化和webpack模块化打包: 一.❀ 模块化 [导入import-----导出export] 1.为什么需要模块化? JavaScript 发展初期,代码简单地堆积在一起,只要能顺利地从上往下一 ...

  7. js模块化开发——前端模块化

    在JavaScript发展初期就是为了实现简单的页面交互逻辑,寥寥数语即可:如今CPU.浏览器性能得到了极大的提升,很多页面逻辑迁移到了客 户端(表单验证等),随着web2.0时代的到来,Ajax技术 ...

  8. js模块化规范—概念和模块化进化史以及模块化的问题

    模块的概念 一个复杂的项目开发中,会写很多js文件,一个js文件执行某些特定的功能,那么每个js都可以称为一个模块,这就是模块的概念 每个js模块内部数据/实现是私有的, 只是向外部暴露一些接口(方法 ...

  9. ES6 模块化与 CommonJS 模块化

    ES6 模块化 import命令用于输入其他模块提供的功能;export命令用于规定模块的对外接口. export 可以有多个,export default 仅有一个 a.js 模块a文件 导出多个方 ...

随机推荐

  1. SQL的拼接语句在DELPHI中怎么写

    SQL 语句的拼接,关键点在于对引号的处理上. 在 delphi 的语法中,使用单引号做字符串的标志符.因此,当遇到 SQL 语句中字符串标识量编写的时候,需要用两个单引号来代替实际的引号. 举例: ...

  2. java map 当key相同的时候 最后一个覆盖最近的一个值

  3. 【bzoj4487】[Jsoi2015]染色问题 容斥原理

    题目描述 棋盘是一个n×m的矩形,分成n行m列共n*m个小方格.现在萌萌和南南有C种不同颜色的颜料,他们希望把棋盘用这些颜料染色,并满足以下规定: 1.  棋盘的每一个小方格既可以染色(染成C种颜色中 ...

  4. web项目访问路径上为什么不能写上WebContent

    我们常常在WEB项目中要写很多的访问路径,比如说/good/target.jsp;目录结构中从来不会带有项目目录结构的WebContent?这到底的为什么呢? 我们知道WEB项目是放在容器上运行的,而 ...

  5. 【数据库_Mysql】Mysql知识汇总

    1.将多列字段合并显示用CONCAT(XX,XX,...): 2.查询表中某字段重复的数据: 查重复字段:select 字段 from table group by 字段 having count(* ...

  6. CF530D sum in the tree

    我是题面.原题地址 很简单的一道贪心题 首先,先想想怎么判断是否合法 题目中说,a是自然数,那么子节点的s明显是不能比父节点大的,如果比父节点大,不合法! 所有深度为偶数的点的s被删除了,也只有深度为 ...

  7. Command Network OpenJ_Bailian - 3436(最小有向生成树模板题)

    链接: http://poj.org/problem?id=3164 题目: Command Network Time Limit: 1000MS   Memory Limit: 131072K To ...

  8. 【BZOJ2339】卡农(递推,容斥)

    [BZOJ2339]卡农(递推,容斥) 题面 BZOJ 题解 先简化一下题意: 在\([1,2^n-1]\)中选择不重复的\(m\)个数,使得他们异或和为\(0\)的方案数. 我们设\(f[i]\)表 ...

  9. redis的Pub/Sub功能

    Pub/Sub功能(即Publish,Subscribe)意思是发布及订阅功能.简单的理解就像我们订阅blog一样,不同的是,这里的客户端与server端采用长连接建立推送机制,一个客户端发布消息,可 ...

  10. 20165218 2017-2018-2 《Java程序设计》课程总结

    20165218 2017-2018-2 <Java程序设计>课程总结 一.每周作业链接汇总 20165218 我期望的师生关系 20165218 学习基础和C语言基础调查 2016521 ...