【问题标题】:Loading hyperagent with require.js使用 require.js 加载超级代理
【发布时间】:2014-05-04 05:58:37
【问题描述】:

我已经使用 bower 安装了 hyperagent,它拉下了一些依赖项,我只是不确定现在如何正确初始化它。

据我所知,它不支持 AMD 加载,所以我正在尝试使用 shim 配置。我尝试了一些东西,看起来像这样:

    <script src="{{ path('root') }}bower/requirejs/require.js"></script>
    <script>
        require.config({
            "baseUrl": "{{ url('root') }}/bower/",
            paths: {
                "vue": 'vue/dist/vue.min',
                "hyperagent": 'hyperagent/dist/hyperagent',
                "jquery": "jquery/jquery.min",
                "uri": "uri.js/src/URI.min"
            },
            shim: {
                'hyperagent': {
                    'deps': ['jquery', 'uri'],
                    'exports': 'Hyperagent'
                }
            }
        });

    </script>

等我以后做

require(['vue', 'hyperagent'], function(Vue, Hyperagent) { ... });

Hyperagent 未定义。

我离题了吗? (哦,小胡子是树枝,这是一个 Symfony 项目)

【问题讨论】:

    标签: requirejs


    【解决方案1】:

    感谢Ben Weiner 提供此信息。取自here。

    我通过 bower 安装了 hyperagent 和 URIjs,现在我只是在需要 hyperagent 之前将 window.URI 设置为全局。这是我的 require.js 配置的相关部分:

    require.config({
      paths: {
        'hyperagent': '../bower_components/hyperagent/dist/amd/hyperagent',
        'URIjs': '../bower_components/uri.js/src',
      }
    });
    

    要使用它,我只需定义一个 amd 模块,它会返回一个已配置的超级代理,例如 configure_hyperagent.js:

    define(function(require) {
      window.URI = require('URIjs/URI');
      window.URITemplate = require('URIjs/URITemplate');
      Hyperagent = require('hyperagent');
    
      // Hyperagent.configure() etc..
    
      return Hyperagent;
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-20
      • 2019-01-20
      • 1970-01-01
      • 1970-01-01
      • 2013-01-21
      • 1970-01-01
      • 1970-01-01
      • 2017-03-22
      相关资源
      最近更新 更多