jbr*_*own 5 javascript ember.js
我有一个ember-cli项目.我用bower来安装fastclick并将它添加到我的brocfile中.
现在我正在尝试初始化它.在我的app.js文件中,我添加了:
import FastClick from 'bower_components/fastclick/lib/fastclick';
Run Code Online (Sandbox Code Playgroud)
但是这在控制台中给出了一个错误:"未捕获的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
Run Code Online (Sandbox Code Playgroud)
我认为问题是fastclick与ember-cli使用的ES6加载器不兼容.我没有requirejs,那么如何在我的项目中安装fastclick?文档位于https://github.com/ftlabs/fastclick.
我也尝试将其添加到index.html,但是当我构建iOS应用程序时它没有任何效果:
$(function() {
FastClick.attach(document.body);
});
Run Code Online (Sandbox Code Playgroud)
随着Ember-cli v0.0.42
安装快速点击 bower
bower install fastclick --save
Run Code Online (Sandbox Code Playgroud)
在Brocfile.js中,添加以下内容 module.exports = app.toTree();
app.import('bower_components/fastclick/lib/fastclick.js');
Run Code Online (Sandbox Code Playgroud)
然后在你的app.js你可以添加
var App = Ember.Application.extend({
...
ready: function(){
FastClick.attach(document.body);
}
});
Run Code Online (Sandbox Code Playgroud)
您还需要添加"FastClick":true到.jshintrc文件的predefs中,以防止它抱怨.有关管理依赖关系的文档中的更多信息.
| 归档时间: |
|
| 查看次数: |
1109 次 |
| 最近记录: |