使用coffeescript如何编写模块加载器的逻辑判断

发布于 2022-08-29 20:23:14 字数 767 浏览 10 评论 0

如下是一个jq-plugin的模块加载器预判,这样的代码如何用coffee写呢?

    (function (factory) {
        if (typeof define === 'function' && define.amd) {
            // AMD
            define(['jquery'], factory)
        } else if (typeof exports === 'object') {
            // CommonJS
            factory(require('jquery'))
        } else if (typeof define === 'function' && define.cmd) {
            // CMD
            define(function (require) {
                require('jquery')
                factory($)
            })
        } else {
            window.Validator = factory(jQuery)
        }
    }, (function ($) {
        // do something
    }))

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

雨的味道风的声音 2022-09-05 20:23:14

解决了,如下即可

do (factory) ->
  if typeof define is "function" and define.amd

    # AMD
    define ["jquery"], factory
  else if typeof exports is "object"

    # CommonJS
    factory require("jquery")
  else if typeof define is "function" and define.cmd

    # CMD
    define (require) ->
      require "jquery"
      factory $
      return

  else
    window.Validator = factory(jQuery)
  return

factory = () ->
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文