fastadmin中调⽤js的⽅法
想要了解fastadmin中的js是怎么调⽤的,就应该先了解RequireJs。
RequireJs是模块化⼯具,每⼀个我们⾃⼰的js⽂件或者库都可以看成是⼀个模块,按需引⼊。写法如下:
<script data-main="js/main" src="js/require.js"></script>
src是引⼊requrejs框架⽂件,data-main是我们⾃⼰的js的总⼊⼝。js/main对应的js⽂件是js/main.js(可⾃⾏命名)
我们在写项⽬的时候肯定会⽤到⼀些js和js类库,那RequireJs是怎么引⽤的,下⾯来介绍⼀下,
引⼊第三⽅库:
  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规范的库和js⽂件,shim是⽤来配不⽀持AMD规范的js。配好之后,假设现在要使⽤jquery 和bootstrap,只要⽤require⽅法:
require(['jquery', 'bootstrap'], function ($, undefined) {
//该function将在引⼊jquery和bootstrap完成之后执⾏。
});
要使⽤我们⾃⼰定义的js,⾸先得⽤模块化的⽅式编写我们的js,使⽤define定义⼀个模块:
define('modelname',['jquery','xxx'], function ($,xxx) {
var hehe = {
function1: function () {
},
function2: function () {
},
function3: function () {
}
};
return hehe;
});
define有三个参数,第⼀个是模块名(可以不写,默认与模块名与⽂件名同名),第⼆个是当前模块依赖的其他模块,第三个是⼀个function,模块体,要求必须return⼀个数据。
PS:下⾯看下Fastadmin⾥⾯的js运⾏原理
以category.js为例来,说明⼀下fastadmin⾥⾯js绑定事件的运⾏原理。
第⼀⾏,定义引⽤的组件
define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
add: function () {
Controller.api.bindevent();
},
这个代码,代表调⽤api对象的bindevent函数。函数定义如下:
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]"));
}
函数第⼀部分是绑定类别变动的事件。
第⼆部分是是绑定窗体时间。
绑定窗体的代码在/public/assets/js/require-form.js⽂件⾥⾯。
这⾥⾯定义了Form对象,在这⾥我们可以看到events事件。bootstrap项目
⾥⾯包含validator,主要是做客户端验证。有了这个就等于⾃动绑定了form验证,验证规则⾃⼰定制。
selectpicker 主要⽤于select下拉选择。
此外还有selectpage、cxselect、citypicker、datetimepicker、plupload、faselect、fieldlist,此外可以⾃⼰定制。
总结
以上所述是⼩编给⼤家介绍的fastadmin中调⽤js的⽅法,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。在此也⾮常感谢⼤家对⽹站的⽀持!
如果你觉得本⽂对你有帮助,欢迎转载,烦请注明出处,谢谢!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。