fastadmin中调用js的方法

 更新时间:2019年05月14日 11:51:46   作者:子钦加油  
这篇文章主要介绍了fastadmin中调用js的方法,在文中给大家补充介绍了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是怎么引用的,下面来介绍一下,

引入第三方库:

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的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • TypeError document.getElementById(...) is null错误原因

    TypeError document.getElementById(...) is null错误原因

    这篇文章主要介绍了TypeError document.getElementById(...) is null错误原因,这是很容易犯的一个低级错误,需要的朋友可以参考下
    2015-05-05
  • 如何用JS追踪用户

    如何用JS追踪用户

    本文介绍如何编写JavaScript脚本,将用户数据发回服务器。对此感兴趣的同学,可以参考下
    2021-05-05
  • JavaScript中的高级特性分享

    JavaScript中的高级特性分享

    JavaScript是一种功能强大的编程语言,具有许多高级特性,本文将介绍JavaScript中的一些高级特性,包括闭包、原型继承、高阶函数、异步编程和模块化,希望对大家有所帮助
    2023-06-06
  • H5+C3+JS实现双人对战五子棋游戏(UI篇)

    H5+C3+JS实现双人对战五子棋游戏(UI篇)

    这篇文章主要为大家详细介绍了H5+C3+JS实现双人对战五子棋游戏,实现双人对战模式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09
  • 使用jsonp实现跨域获取数据实例讲解

    使用jsonp实现跨域获取数据实例讲解

    这篇文章主要介绍了使用jsonp实现跨域获取数据实例讲解,需要的朋友可以参考下
    2016-12-12
  • 微信小程序按钮点击跳转页面详解

    微信小程序按钮点击跳转页面详解

    这篇文章主要介绍了微信小程序按钮点击跳转页面,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • Bootstrap table使用方法详细介绍

    Bootstrap table使用方法详细介绍

    bootstrap-table是在bootstrap-table的基础上写出来的,专门用于显示数据的表格插件。这篇文章主要为大家详细介绍了JS组件Bootstrap Table使用方法,具有一定的实用性和参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • IE不出现Flash激活框的小发现的js实现方法

    IE不出现Flash激活框的小发现的js实现方法

    IE不出现Flash激活框的小发现的js实现方法...
    2007-09-09
  • js+canvas实现飞机大战

    js+canvas实现飞机大战

    这篇文章主要为大家详细介绍了js canvas实现飞机大战,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • JS实现的添加弹出层并完成锁屏操作示例

    JS实现的添加弹出层并完成锁屏操作示例

    这篇文章主要介绍了JS实现的添加弹出层并完成锁屏操作,涉及JS针对页面元素与样式动态操作相关技巧,需要的朋友可以参考下
    2017-04-04

最新评论