【问题标题】:requireJS: definining class to be used as global variablerequireJS:定义要用作全局变量的类
【发布时间】:2012-01-21 14:59:53
【问题描述】:

由于某种原因,我似乎真的无法理解 RequireJS(查看了其他各种问题)

一些背景:

  • 我正在使用 jquery(所以没有 Node.js 自动构建的东西)
  • 我正在使用客户端 mVC lib 库 (spine.js),在我的情况下,它作为设置的一部分在其代码内部执行 require("Avail")
  • 'Avail' 是一个 javascript 类,作为 window.Avail 全局存在

我收到错误消息

Uncaught Error: Module name 'Avail' has not been loaded yet for context: _ http://requirejs.org/docs/errors.html#notloaded

我知道它没有加载但是怎么做呢?当我的应用程序启动时,有没有办法告诉 requireJS 在默认上下文“_”下注册“可用”?

我已经尝试了以下几种方法(以及很多变体,但我无法让它发挥作用):

    (function() {   
       define("Avail", [],function(){
           return window.Avail
       });
     })();

帮助非常感谢。谢谢。

【问题讨论】:

    标签: jquery require requirejs


    【解决方案1】:

    事实证明,即使 Spine.js 在其代码中已经对“models/Avail”提出了要求,我也必须自己对“models/Avail”提出要求。

    文件:spine.models.coffee

    class Avail extends Spine.Model
    @configure 'Avail'
    
    define "models/Avail", ->
      Avail
    

    文件:main.html

      require(["jquery","models/Avail"], function($) {
        $(function() {
           new Spine.App();
        })
      });
    

    【讨论】:

      猜你喜欢
      • 2021-06-26
      • 1970-01-01
      • 2021-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-27
      • 1970-01-01
      相关资源
      最近更新 更多