Jes*_*sen 18 jquery backbone.js jspm
我正在尝试使用JSPM从NPM安装backbone.marionette以进行客户端依赖性解析.使用commandprompt中的以下命令进行简单操作:
jspm install marionette = npm:backbone.marionette
除了jquery之外的所有依赖项都会自动下载和安装.但是我收到运行时错误:
无法调用延迟未定义.
我正在查看代码,我发现问题出现在主干源代码行9,10和11中
} else if (typeof exports !== 'undefined') {
var _ = require("underscore");
factory(root, exports, _);
Run Code Online (Sandbox Code Playgroud)
在运行时traceurJS
,factory-method
从这里调用,很明显,最后一个参数$
被省略了.当我查看github上的主干源代码时,相同的行看起来像这样:
} else if (typeof exports !== 'undefined') {
var _ = require('underscore'), $;
try { $ = require('jquery'); } catch(e) {}
factory(root, exports, _, $);
Run Code Online (Sandbox Code Playgroud)
这里使用选项(try/catch)添加jquery依赖项.我必须在此添加,NPM版本标记与GitHub - 1.1.2相同的版本.
为什么不同? 好像这已经成为问题一段时间了,发布了一些解决方法,比如在代码中添加这个:
$ = require('jquery');
Backbone = require('backbone');
Backbone.$ = $
Run Code Online (Sandbox Code Playgroud)
我不喜欢这个,虽然它有效,因为它是一种解决方法,似乎它"不存在".
归档时间: |
|
查看次数: |
553 次 |
最近记录: |