我一直在我的頭靠牆撞了幾個小時在這和Im只是難倒。任何幫助是極大的讚賞!無法獲得木偶與Browserify
基本上,超級基本回購設置讓Browserify與Backbone和Marionette一起工作。只是沒有發生。
app.js:
var View = require('./view'),
$ = require('jquery'),
Backbone = require('backbone'),
Marionette = require('backbone.marionette');
Backbone.$ = window.$;
var myview = new View();
myview.render();
$('body').css('background-color','#f0f0f0');
var mapp = new Marionette.Application();
console.dir(Marionette);
簡單。我的觀點是更簡單的方法:
var Backbone = require('backbone');
module.exports = TestView = Backbone.View.extend({
render: function() {
$('body').append('<p>Hello world! (Backbone view rendered successfully!</p>');
}
});
最後我的package.json片斷具體到browserify:
"browser": {
"jquery": "./requires/jquery.js",
"underscore": "./requires/underscore.js",
"backbone": "./requires/backbone.js",
"backbone.wreqr": "./requires/backbone.wreqr.js",
"backbone.babysitter": "./requires/backbone.babysitter.js",
"backbone.marionette": "./requires/backbone.marionette.js"
},
"browserify-shim": {
"jquery": "$",
"underscore": "_",
"backbone": {
"exports": "Backbone",
"depends": [
"underscore:underscore"
]
},
"backbone.babysitter": {
"exports": "Backbone.BabySitter",
"depends": [
"backbone:Backbone"
]
},
"backbone.wreqr": {
"exports": "Backbone.Wreqr",
"depends": [
"backbone:Backbone"
]
},
"backbone.marionette": {
"exports": "Marionette",
"depends": [
"jquery:jQuery",
"backbone:Backbone",
"underscore:_"
]
}
},
"browserify": {
"transform": [
"browserify-shim"
]
}
我覺得像林99%的有!最後一個問題是,jquery似乎沒有加載作爲木偶的依賴。 app.js中的console.log顯示$對於Marionette對象是未定義的。顯示在控制檯日誌當您運行的應用程序是錯誤:
this._deferred = Marionette.$.Deferred();
Uncaught TypeError: Cannot call method 'Deferred' of undefined
此時它的一些愚蠢的Im做,我只是不能把我的手指上。如果它更容易,你可以看看我創建的超級基礎項目的回購,只是爲了解決這個問題。
https://github.com/jkat98/browserifytest
感謝!!!!!!
我應該只使用backbone.marionette的AMD版本和wreqr,保姆?嘗試了一下,但仍然保持與那個紡車輪。 – jkat98