ホームページ > 記事 > ウェブフロントエンド > layui のモジュール式および非モジュール式の使用 (コード付き)
非モジュラーとモジュラーの違いは次のとおりです。
非モジュラーlayui.use([],fun を呼び出す必要はありません) . ..)対応するモジュールを導入します。インポートされた JS は /layui/layui.all.js
Modularizationlayui.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> <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') //删除的业务逻辑 } }
レイヤーとフォームをグローバル変数として導入することもできます:
/** * @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 です。 .js
は「ワンタイムロード」方式を採用しています。この方法を採用すると、layui.use() メソッドを通じてモジュールをロードする必要がなくなり、次のように直接使用できます。
例:
<!DOCTYPE html> <html> <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> <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> <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> <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 使用法チュートリアル 列に注意してください。
以上がlayui のモジュール式および非モジュール式の使用 (コード付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。