为什么我必须主干。$=require(';jquery';)在browserify中
我正在阅读并自己练习 如果删除主干。$=$,代码将无法工作。为什么?为什么我必须主干。$=require(';jquery';)在browserify中,jquery,backbone.js,browserify,Jquery,Backbone.js,Browserify,我正在阅读并自己练习 如果删除主干。$=$,代码将无法工作。为什么? var Backbone = require('backbone'); var $ = require('jquery'); Backbone.$ = $; module.exports = Backbone.View.extend({ initialize: function(){ console.log('wuuut') this.render(); }, render: function(
var Backbone = require('backbone');
var $ = require('jquery');
Backbone.$ = $;
module.exports = Backbone.View.extend({
initialize: function(){
console.log('wuuut')
this.render();
},
render: function(){
$('body').prepend('<p>wooooooooooooooo</p>');
}
});
var-Backbone=require('Backbone');
var$=require('jquery');
主干。$=$;
module.exports=Backbone.View.extend({
初始化:函数(){
console.log('wuut')
这个。render();
},
render:function(){
$('body')。前置('p>woooooooo');
}
});
为什么在节点js中,我必须将jquery分配给主干对象中的成员 默认情况下,主干具有以下代码:
// For Backbone's purposes, jQuery, Zepto, Ender, or My Library (kidding) owns
// the `$` variable.
Backbone.$ = $;
如果您通过
require
加载模块,$
对主干网不可用,因此您必须手动设置。如果您没有,则依赖于jQuery
的Backbone.View
将不起作用。既然Backbone已经有了此分配代码,为什么还要手动重新分配?由于browserify包装其模块的方式,$
在全局上下文中不可用,因此,在browserify模块内部调用$=$主干时,它不可用。