Layui入門

首先我目前用的版本是 layui-v2.5.5 ,後期大家用的版本可能會有所出入,大家可自行去 官網 自行下載最新版,當然大家如有什麼不懂的,請直接留言,我會盡快爲你解答,共勉。

一、目錄結構

  1. ├─css //css目錄
  2. │ │─modules //模塊css目錄(一般如果模塊相對較大,我們會單獨提取,比如下面三個:)
  3. │ │ ├─laydate
  4. │ │ ├─layer
  5. │ │ └─layim
  6. │ └─layui.css //核心樣式文件
  7. ├─font //字體圖標目錄
  8. ├─images //圖片資源目錄(目前只有layim和編輯器用到的GIF表情)
  9. │─lay //模塊核心目錄
  10. │ └─modules //各模塊組件
  11. │─layui.js //基礎核心庫
  12. └─layui.all.js //包含layui.js和所有模塊的合併文

二、簡單介紹

layui分爲兩種包(模塊化、非模塊化),非模塊化引的是 layui.all.js ,裏面包含的所有組件,相當於你去肯德基裏面買的全家桶。

模塊化引的是 layui.js ,相當於你去肯德基裏面按自己的喜好點的單品,吃啥點啥(用到哪個模塊就引入哪個模塊)避免浪費。

同理在實際開發時,如果你一上來就引了個全包會加大與服務器HTTP時的通信壓力,所以我推薦大家使用 layui 時使用模塊化的方式去實現 layui 的功能,按模塊去熟悉 layui 。

三、模塊化使用教程

大家先看下官網給出了哪些模塊,如下圖:

上面紅色框出的部分就是目前版本中所擁有的模塊,而我們一般使用最頻繁的模塊就是layer(彈出層)、table(數據表格)、form(表單),下面我將結合我最近的代碼塊給大家講解。

1、數據表格(table)

    首先大家通過

layui.use([模塊名,模塊名]),function(){}

引入所需 模塊,然後結合下圖對 table 模塊進行初步的認識:

var layer = layui.layer
            ,$ = layui.$
			,form = layui.form
            ,laydate = layui.laydate;

這段代碼的意思是對所引入的模塊起別名,方便後面大家可直接通過 別名 調用模塊中的方法,該模塊中需要注意以下幾點:

① 數據表格的數據接口需返回 JSON 格式的數據

② 分頁需在後臺進行數據的控制,前端只提供了分頁參數,默認爲 page (頁碼) limit (每頁展示數)

③ 列表中展示列數據不需要處理的直接將 fileld 與後臺屬性保持一致即可,對於需要特殊處理的,如常見的 對象 、時間 可通過如下圖中的方式進行控制。

文末附上 js 格式化時間的方法,方便大家參考。

2、表單(form)

引入方式同上,直接上圖:

該模塊需要注意的有以下幾個方面:

① 表格數據的獲取方式一般可直接寫 data.field 但當有附件時,推薦大家用

var formData  = new FormData($("#mealRollForm")[0]);

 ② 表單方法末尾一定要加上 break !!! 別問我爲什麼,你可以不加試試...

3、彈出層(layer)

彈出層沒啥好說的,直接上官網的介紹:

基礎參數

我們提到的基礎參數主要指調用方法時用到的配置項,如:layer.open({content: ''})layer.msg('', {time: 3})等,其中的content和time即是基礎參數,以鍵值形式存在,基礎參數可合理應用於任何層類型中,您不需要所有都去配置,大多數都是可選的。而其中的layer.open、layer.msg就是內置方法。注意,從2.3開始,無需通過layer.config來加載拓展模塊

type - 基本層類型

title - 標題

content - 內容

類型:Number,默認:0

layer提供了5種層類型。可傳入的值有:0(信息框,默認)1(頁面層)2(iframe層)3(加載層)4(tips層)。 若你採用layer.open({type: 1})方式調用,則type爲必填項(信息框除外)

類型:String/Array/Boolean,默認:'信息'

title支持三種類型的值,若你傳入的是普通的字符串,如title :'我是標題',那麼只會改變標題文本;若你還需要自定義標題區域樣式,那麼你可以title: ['文本', 'font-size:18px;'],數組第二項可以寫任意css樣式;如果你不想顯示標題欄,你可以title: false

類型:String/DOM/Array,默認:''

content可傳入的值是靈活多變的,不僅可以傳入普通的html內容,還可以指定DOM,更可以隨着type的不同而不同

這塊建議大家直接看官方文檔,上面介紹的很詳細,這塊也沒啥坑,附上 鏈接

js 時間格式化

//轉換日期格式(時間戳轉換爲datetime格式)
function changeDateFormat(cellval) {
    var dateVal = cellval + "";
    if (cellval != null) {
        var date = new Date(parseInt(dateVal.replace("/Date(", "").replace(")/", ""), 10));
        var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
        var currentDate = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();

        var hours = date.getHours() < 10 ? "0" + date.getHours() : date.getHours();
        var minutes = date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes();
        var seconds = date.getSeconds() < 10 ? "0" + date.getSeconds() : date.getSeconds();

        return date.getFullYear() + "-" + month + "-" + currentDate + " " + hours + ":" + minutes + ":" + seconds;
    }else{
        return "";
    }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章