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

  •     非模块化不用每次都调用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. Django内置的分页模块

    自定义分页 未封装版: 优点:直观 缺点:代码乱,不易维护,可拓展性差 data = [] for i in range(1, 302): tmp = {"id": i, &quo ...

  2. [C/C++] 快速幂讲解

    转自:http://www.cnblogs.com/CXCXCXC/p/4641812.html 快速幂这个东西比较好理解,但实现起来到不老好办,记了几次老是忘,今天把它系统的总结一下防止忘记. 首先 ...

  3. 【Quartz.Net】.net 下使用Quartz.Net

    Quartz.net是作业调度框架 1. 项目中添加quartz.net的引用(这里使用nuget管理) 新建一个类TimingJob,该类主要用于实现任务逻辑   using Quartz; usi ...

  4. Kafka及Spring Cloud Stream

    安装 下载kafka http://mirrors.hust.edu.cn/apache/kafka/2.0.0/kafka_2.11-2.0.0.tgz kafka最为重要三个配置依次为:broke ...

  5. HUST1017-Exact Cover

    给出一个\(n\times m\)的01矩阵,每行最多有\(c\)个1,求一个精确覆盖,即选出一些行使得每列有有且仅有一个1.输出方案. 分析 被这个题坑到了啊!!第一次上HUSTOJ做题,不知道没有 ...

  6. Educational Codeforces Round 33 (Rated for Div. 2) 题解

    A.每个状态只有一种后续转移,判断每次转移是否都合法即可. #include <iostream> #include <cstdio> using namespace std; ...

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

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

  8. 【刷题】BZOJ 4196 [Noi2015]软件包管理器

    Description Linux用户和OSX用户一定对软件包管理器不会陌生.通过软件包管理器,你可以通过一行命令安装某一个软件包,然后软件包管理器会帮助你从软件源下载软件包,同时自动解决所有的依赖( ...

  9. mysql数据库----python操作mysql ------pymysql和SQLAchemy

    本篇对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy 一.pymysql pymsql是Python中操作MySQL的模块,其使用方法和MySQ ...

  10. 【组合数学】【P4996】 咕咕咕

    Description 小 F 注意到,自己总是在某些情况下会产生歉意.每当他要检查自己的任务表来决定下一项任务的时候,如果当前他干了某些事情,但是没干另一些事情,那么他就会产生一定量的歉意--比如, ...