怎么在fastadmin中對JavaScript進(jìn)行調(diào)用-創(chuàng)新互聯(lián)

怎么在fastadmin中對JavaScript進(jìn)行調(diào)用?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站建設(shè)、網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的保山網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

RequireJs是模塊化工具,每一個我們自己的js文件或者庫都可以看成是一個模塊,按需引入。寫法如下:

<script data-main="js/main" src="js/require.js"></script>

src是引入requrejs框架文件,data-main是我們自己的js的總?cè)肟?。js/main對應(yīng)的js文件是js/main.js(可自行命名)

 我們在寫項目的時候肯定會用到一些js和js類庫,那RequireJs是怎么引用的,下面來介紹一下,

引入第三方庫:

require.config({
  paths: {
    'lang': "empty:",
    'form': 'require-form',
    'table': 'require-table',
    'upload': 'require-upload',
    'validator': 'require-validator',
    'drag': 'jquery.drag.min',
    'drop': 'jquery.drop.min',
    'echarts': 'echarts.min',
    'echarts-theme': 'echarts-theme',
    'jquery': '../libs/jquery/dist/jquery.min',
  },
  // shim依賴配置
  shim: {
    'addons': ['backend'],
    'bootstrap': ['jquery'],
    'bootstrap-table': {
      deps: [
        'bootstrap',
        // 'css!../libs/bootstrap-table/dist/bootstrap-table.min.css'
      ],
    exports: '$.fn.bootstrapTable'
    },
    'bootstrap-table-lang': {
      deps: ['bootstrap-table'],
      exports: '$.fn.bootstrapTable.defaults'
    },
  },
  map: {
    '*': {
      'css': '../libs/require-css/css.min'
    }
  },
  waitSeconds: 30,
  charset: 'utf-8' // 文件編碼
});

 config中paths用來配置支持AMD規(guī)范的庫和js文件,shim是用來配不支持AMD規(guī)范的js。配好之后,假設(shè)現(xiàn)在要使用jquery和bootstrap,只要用require方法:

require(['jquery', 'bootstrap'], function ($, undefined) {
 //該function將在引入jquery和bootstrap完成之后執(zhí)行。
});

 要使用我們自己定義的js,首先得用模塊化的方式編寫我們的js,使用define定義一個模塊:

define('modelname',['jquery','xxx'], function ($,xxx) {
 var hehe = {
  function1: function () {
  },
  function2: function () {
  },
  function3: function () {
  }
 };
 return hehe;
});

define有三個參數(shù),第一個是模塊名(可以不寫,默認(rèn)與模塊名與文件名同名),第二個是當(dāng)前模塊依賴的其他模塊,第三個是一個function,模塊體,要求必須return一個數(shù)據(jù)。

PS:下面看下Fastadmin里面的js運(yùn)行原理

以category.js為例來,說明一下fastadmin里面js綁定事件的運(yùn)行原理。

第一行,定義引用的組件

define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
add: function () {
  Controller.api.bindevent();
},

這個代碼,代表調(diào)用api對象的bindevent函數(shù)。函數(shù)定義如下:

bindevent: function () {
 $(document).on("change", "#c-type", function () {
  $("#c-pid option[data-type='all']").prop("selected", true);
  $("#c-pid option").removeClass("hide");
  $("#c-pid option[data-type!='" + $(this).val() + "'][data-type!='all']").addClass("hide");
  $("#c-pid").selectpicker("refresh");
 });    
 Form.api.bindevent($("form[role=form]"));
}

函數(shù)第一部分是綁定類別變動的事件。

第二部分是是綁定窗體時間。

綁定窗體的代碼在/public/assets/js/require-form.js文件里面。

這里面定義了Form對象,在這里我們可以看到events事件。

里面包含validator,主要是做客戶端驗證。有了這個就等于自動綁定了form驗證,驗證規(guī)則自己定制。

selectpicker 主要用于select下拉選擇。

此外還有selectpage、cxselect、citypicker、datetimepicker、plupload、faselect、fieldlist,此外可以自己定制。

看完上述內(nèi)容,你們掌握怎么在fastadmin中對JavaScript進(jìn)行調(diào)用的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

分享名稱:怎么在fastadmin中對JavaScript進(jìn)行調(diào)用-創(chuàng)新互聯(lián)
文章出自:http://muchs.cn/article30/ddhiso.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)、標(biāo)簽優(yōu)化移動網(wǎng)站建設(shè)、網(wǎng)站設(shè)計、域名注冊、建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管