为ember-cli创建垫片

时间:2015-06-05 15:51:17

标签: ember-cli

我正在尝试为 @jmurphyau 回答getstreamhere库为ember-cli创建垫片。

bower install getstream,然后创建文件

vendor/shims/getstream.js

(function() { 
  /* globals define, getstream */

  function getstreamModule() { 

    'use strict';

    return getstream; // <-- got error here
  }

  define('getstream', [], getstreamModule);

})();

并向Brocfile.js

添加行
app.import('bower_components/getstream/dist/js_min/getstream.js');
app.import('vendor/shims/getstream.js', {
  exports: {
   'getstream': [ 'default' ]
  }
});

并在路线中尝试import Stream from 'getstream';

在getstream.js中获得Uncaught ReferenceError: getstream is not defined

出了什么问题以及如何解决?谢谢你的回答。

1 个答案:

答案 0 :(得分:1)

您是否尝试过使用ember-browsify?

该库看起来不像是公开了一个名为getstream的全局变量,这就是为什么你会收到这个错误。

但是看起来它支持CommonJS模块语法,因此ember-browserify应该可以工作。

  1. 安装ember-browserify

    ember install ember-browserify

  2. 将CommonJS库安装为NPM包

    npm install --save-dev getstream

  3. 使用带有常规import语法的NPM包

    import getstream from 'npm:getstream';