如何使用ember-cli安装fastclick

How to install fastclick with ember-cli?

本文关键字:fastclick 安装 ember-cli 何使用      更新时间:2023-09-26

我有一个ember-cli项目。我用bower安装了fastclick,并将其添加到了我的brocfile中。

现在我正在尝试初始化它。在我的app.js文件中,我添加了:

import FastClick from 'bower_components/fastclick/lib/fastclick';

但这在控制台中给了我一个错误:"Uncaught TypeError:无法读取未定义的属性'default'"。检查员显示以下生成的代码:

["ember","ember/resolver","ember/load-initializers","bower_components/fastclick/lib/fastclick","exports"],
function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __exports__) {
"use strict";
 var Ember = __dependency1__["default"];
 var Resolver = __dependency2__["default"];
 var loadInitializers = __dependency3__["default"];
 var FastClick = __dependency4__["default"];      # chrome highlights this line

我认为问题在于fastclick与ember-cli使用的ES6加载程序不兼容。我没有requirejs,所以我如何将fastclick安装到我的项目中?文档位于https://github.com/ftlabs/fastclick.

我也尝试过将其添加到index.html中,但当我构建iOS应用程序时,它没有任何效果:

  $(function() {
    FastClick.attach(document.body);
  });

使用Ember cli 0.0.42

使用bower 安装快速点击

bower install fastclick --save

在您的Brocfile.js中,添加以下module.exports = app.toTree();

app.import('bower_components/fastclick/lib/fastclick.js');

然后在您的app.js中,您可以添加

var App = Ember.Application.extend({
  ...
  ready: function(){
    FastClick.attach(document.body);
  }
});

您还需要将"FastClick":true添加到.jshintrc文件的预定义中,以防止它抱怨。文档中有关管理依赖关系的更多信息。

您也可以使用ember-cli fastclick:)

好的,jquery版本不起作用,但将以下内容放入我的index.html文件中起作用:

window.addEventListener('load', function() {
    FastClick.attach(document.body);
}, false);