Layui底层方法.docx

上传人:公**** 文档编号:560028499 上传时间:2022-11-24 格式:DOCX 页数:5 大小:32.38KB
返回 下载 相关 举报
Layui底层方法.docx_第1页
第1页 / 共5页
Layui底层方法.docx_第2页
第2页 / 共5页
Layui底层方法.docx_第3页
第3页 / 共5页
Layui底层方法.docx_第4页
第4页 / 共5页
Layui底层方法.docx_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《Layui底层方法.docx》由会员分享,可在线阅读,更多相关《Layui底层方法.docx(5页珍藏版)》请在金锄头文库上搜索。

1、本篇主要介绍layui.js所发挥的作用,其中过滤了大部分在外部可能不是太常用的API,侧重罗列了最常用的框架支撑。全局配置方法:layui.config(options)你可以在使用模块之前,全局化配置一些参数,尽管大部分时候它不是必须的。所以我们目前提供的全局配置项非常少,这也是为了减少一些不必要的工作,尽可能让使用变得更简单。目前支持的全局配置项如下:codelayui.codelayui.config( dir: /res/layui/ /layui.js 所在路径(注意,如果是script单独引入layui.js,无需设定该参数。),一般情况下可以无视 ,version: false

2、 /一般用于更新模块缓存,默认不开启。设为true即让浏览器不缓存。也可以设为一个固定的值,如:201610 ,debug: false /用于开启调试模式,默认false,如果设为true,则JS模块的节点会保留在页面 ,base: /设定扩展的Layui模块的所在目录,一般用于外部模块扩展); 定义模块方法:layui.define(mods, callback)通过该方法可定义一个Layui模块。参数mods是可选的,用于声明该模块所依赖的模块。callback即为模块加载完毕的回调函数,它返回一个exports参数,用于输出该模块的接口。codelayui.codelayui.defi

3、ne(function(exports) /do something exports(demo, function() alert(Hello World!); );); 跟Requirejs最大不同的地方在于接口输出,exports是一个函数,它接受两个参数,第一个参数为模块名,第二个参数为模块接口,当你声明了上述的一个模块后,你就可以在外部使用了,demo就会注册到layui对象下,即可通过layui.demo()去执行该模块的接口。你也可以在定义一个模块的时候,声明该模块所需的依赖,如:codelayui.codelayui.define(layer, laypage, function

4、(exports) /do something exports(demo, function() alert(Hello World!); );); 上述的layer, laypage即为本模块所依赖的模块,它并非只能是一个数组,你也可以直接传一个字符型的模块名,但是这样只能依赖一个模块。加载所需模块方法:layui.use(mods, callback)Layui的内置模块并非默认就加载的,他必须在你执行该方法后才会加载。它的参数跟上述的 define方法完全一样。另外请注意,mods里面必须是一个合法的模块名,不能包含目录。如果需要加载目录,建议采用extend建立别名(详见模块规范)co

5、delayui.codelayui.use(laypage, layedit, function() var laypage = layui.laypage ,layedit = layui.layedit; /do something); 该方法的函数其实返回了所加载的模块接口,所以你其实也可以不通过layui对象赋值获得接口(这一点跟Sea.js很像哈):codelayui.codelayui.use(laypage, layedit, function(laypage, layedit) /使用分页 laypage(); /建立编辑器 layedit.build();); 动态加载CSS

6、方法:layui.link(href)href即为css路径。注意:该方法并非是你使用Layui所必须的,它一般只是用于动态加载你的外部CSS文件。本地存储方法:layui.data(table, settings)参数table为表名,settings是一个对象,用于设置key、value。该方法对localStorage进行了良好的封装,在Layui的多个内置模块(比如layim)中发挥了重要的作用,因此你可以使用它存储一些本地数据。codelayui.code/【增】:向test表插入一个nickname字段,如果该表不存在,则自动建立。layui.data(test, key: nic

7、kname ,value: 贤心);/【删】:删除test表的nickname字段layui.data(test, key: nickname ,remove: true);layui.data(test, null); /删除test表 /【改】:同【增】,会覆盖已经存储的数据 /【查】:向test表读取全部的数据var localTest = layui.data(test);console.log(localTest.nickname); /获得“贤心” 获取设备信息方法:layui.device(key),参数key是可选的由于Layui的一些功能进行了兼容性处理和响应式支持,因此该方

8、法同样发挥了至关重要的作用。尤其是在layui mobile模块中的作用可谓举足轻重。该方法返回了丰富的设备信息:codelayui.codevar device = layui.device(); /device即可根据不同的设备返回下述不同的信息codelayui.code os: windows /底层操作系统,windows、linux、mac等 ,ie: false /ie6-11的版本,如果不是ie浏览器,则为false ,weixin: false /是否微信环境 ,android: false /是否安卓系统 ,ios: false /是否ios系统 有时你的App可能会对us

9、erAgent插入一段特定的标识,譬如:Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143myapp/1.8.6Safari/537.36你要验证当前的WebView是否在你的App环境,即可通过上述的myapp(即为Native给Webview插入的标识,可以随意定义)来判断。codelayui.codevar device = layui.device(myapp);if(device.myapp) alert(在我的App环境); 其它其实除此之外

10、,layui.js内部还提供了许多底层引擎,他们同样是整个Layui框架体系的有力支撑,所以有必要露个脸,尽管你可能并不会用到:方法/属性描述layui.cache静态属性。获得一些配置及临时的缓存信息layui.getStyle(node, name)获得一个原始DOM节点的style属性值,如:layui.getStyle(document.body, font-size)layui.img(url, callback, error)图片预加载layui.extend(options)拓展一个模块别名,如:layui.extend(test: /res/js/test)layui.rout

11、er()获得location.hash路由,目前在Layui中没发挥作用。对做单页应用会派上用场。layui.hint()向控制台打印一些异常信息,目前只返回了error方法:layui.hint().error(出错啦)layui.each(obj, fn)对象(Array、Object、DOM对象等)遍历,可用于取代for语句layui.stope(e)阻止事件冒泡layui.onevent(modName, events, callback)自定义模块事件,属于比较高级的应用。有兴趣的同学可以阅读layui.js源码以及form模块layui.event(modName, events, params)执行自定义模块事件,搭配onevent使用第三方支撑Layui部分模块依赖jQuery(比如layer),但是你并不用去额外加载jQuery。Layui已经将jQuery最稳定的一个版本改为Layui的内部模块,当你去使用layer的时候,它会首先判断你的页面是否已经引入了jQuery,如果没有,则加载内部的jQuery模块,如果有,则不会加载。另外,我们的图标取材于阿里巴巴矢量图标库(iconfont),构建工具采用Gulp。除此之外,不依赖于任何第三方工具。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号