使用卓别林与Browserify和jQuery要求你做到以下几点:如何避免冗余骨干/ jQuery的初始化与卓别林和Browserify
Backbone = require('backbone')
$ = require('jquery')
Backbone.$ = $
Chaplin = require('chaplin')
这必须是书面每次require('chaplin')
。如果你在任何使用Chaplin的模块中都会错过这个模块,并且如果该模块被初始化,那么Chaplin将会被破坏,因为它会初始化为不使用jQuery而使用Chaplin,但是后来最终设置Backbone.$
为jQuery
,卓别林并不期待。
这将破坏的一个例子是Chaplin的视图,它将被初始化为使用'appendChild'而不是'append'作为containerMethod。但该元素将是一个没有appendChild的jQuery选择器。
有没有办法在Browserify中强制执行订单,以便在使用Chaplin的每个模块中都不需要此样板代码?
是的,这将工作。我们没有更新所有模块,而是指望我们的工程师记住包含my-chaplin,我们决定采用该模块并强制它成为Browserify命令行上的第一个模块。不知道这是否有保证,但它现在正在工作。如果browserify具有操作顺序的声明方式,那将会很好。 – donaddon
我通过浏览处理一个需要应用程序其余部分的单个根文件来管理它。任何预先配置发生在那里。你能做到这一点,而不是传递几个文件browserify? – joews