fastadmin中调用js的方法

想要了解fastadmin中的js是怎么调用的,就应该先了解RequireJs。

RequireJs是模块化工具,每一个我们自己的js文件或者库都可以看成是一个模块,按需引入。写法如下:

<script data-main="js/main" src="https://www.jb51.net/js/require.js"></script>

src是引入requrejs框架文件,data-main是我们自己的js的总入口。js/main对应的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规范的库和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事件。

里面包含validator,主要是做客户端验证。有了这个就等于自动绑定了form验证,验证规则自己定制。

selectpicker 主要用于select下拉选择。

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

总结

以上所述是小编给大家介绍的fastadmin中调用js的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/b0ab06b9b5e53bb95e25c90338421d14.html