💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
本篇将主要讲解使用过程中普遍遇到的“问题”,这些问题并非是BUG,通常是需要我们自己去注意的一些点。(会结合用户反馈持续补充) 应该如何加载模块最科学? 事实上我们在模块规范已经有明确地说明,你可以采用预先加载和按需加载两种模式,但后者我们并不推荐(文档也解释原因了)。因此我们强烈推荐的方式是:你应该在你js文件的代码最外层,就把需要用到的模块 layui.use以 一下,如: JavaScriptlayui.code /** 你的js文件 **/ //我们强烈推荐你在代码最外层把需要用到的模块先加载 layui.use(['layer', 'form', 'element'], function(){ var layer = layui.layer ,form = layui.form ,element = layui.element //…… //你的代码都应该写在这里面 }); 如何使用内部jQuery? 由于Layui部分内置模块依赖jQuery,所以我们将jQuery1.11最稳定的一个版本作为一个内置的DOM模块(唯一的一个第三方模块)。只有你所使用的模块有依赖到它,它才会加载,并且如果你的页面已经script引入了jquery,它并不会重复加载。内置的jquery模块去除了全局的$和jQuery,是一个符合layui规范的标准模块。所以你必须通过以下方式得到: JavaScriptlayui.code ~~~ //主动加载jquery模块 layui.use(['jquery', 'layer'], function(){ var $ = layui.$ //重点处 ,layer = layui.layer; //后面就跟你平时使用jQuery一样 $('body').append('hello jquery'); }); //如果内置的模块本身是依赖jquery,你无需去use jquery,所以上面的写法其实可以是: layui.use('layer', function(){ var $ = layui.$ //由于layer弹层依赖jQuery,所以可以直接得到 ,layer = layui.layer; //…… }); ~~~ 为什么表单不显示? 当你使用表单时,Layui会对select、checkbox、radio等原始元素隐藏,从而进行美化修饰处理。但这需要依赖于form组件,所以你必须加载 form,并且执行一个实例。值得注意的是:导航的Hover效果、Tab选项卡等同理(它们需依赖 element 模块) JavaScriptlayui.code layui.use('form', function(){ var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功 //…… //但是,如果你的HTML是动态生成的,自动渲染就会失效 //因此你需要在相应的地方,执行下述方法来手动渲染,跟这类似的还有 element.init(); form.render(); }); 哪里有 layui 未压缩源代码? 我们的全部代码托管在GitHub(你可以通过首页的Star进入)和码云。之所以在下载包里没有提供未压缩的源代码,是为了避免一些猿的使用混淆,因为之前有遇到过部分可爱到极致的猿,居然同时引入了压缩过和未压缩过的layui.js,虽然文档在“开始使用”中有相关的明确说明,但这种问题仍然不是个例,使得我欲哭无泪啊啊啊,但毕竟我们要做“中国最容易使用的UI框架”,因此才决定只对下载包提供我们构建后的代码,并且,由于是经过了压缩、合并等处理,所以更适合用于生产环境。 layui的 GitHub 地址(点击下述 Star 进入) 还是遇到困难咋办? 可以继续看看这个:layui 常见问题的处理和实用干货集锦 但我还是不会用怎么办?我还是遇到困难怎么办? 首先,多看文档啊亲!那可是作者一个字节一个字节撸出来的,求珍惜。你抽出一定时间仔细阅读文档,后面只会节省更多时间! 其次,实在无解,就请在社区反馈吧。你也可以自己组织QQ群,在社区神马的地方拉一些 layui 的小伙伴,相互交流噢!