我正在使用require.js的text! plug-in
加載我的骨幹項目的JavaScript模板。查看未使用require.js文本呈現!插件
這裏我mini_signin.html
<script type="text/template" id="signinTemplate">
<div class="cartheadertitle">Sign In
//html of sign in element
</div>
</div>
觀點:
define(["jquery" ,
"underscore" ,
"backbone" ,
"text!templates/User/mini_signin.html"],
function($ , _ , Backbone , signinTemplate){
var SignInView = Backbone.View.extend({
el : $("#loginpanel"),
initialize:function(){
this.render();
console.log("start");
},
render:function(){
var signIn = _.template(signinTemplate, {})
this.$el.html(signIn);
console.log("stop");
}
});
return SignInView;
});
路由器:
define([
'jquery',
'backbone',
'router',
'views/CartList'
] , function($,Backbone,Router , SignInView){
var AppRouter = Backbone.Router.extend({
routes: {
"showCart": "cartList",
"*actions": "defaultRoute" // Backbone will try match the route above first
}
});
// Instantiate the router
var app_router = new AppRouter;
app_router.on('route:cartList', function (showCart) {
var signInView = new SignInView();
signInView.render();
alert("test");
});
Backbone.history.start();
});
控制檯結果:
stop
start
stop
alert
在路由器工作,但signInView
沒有沒有鉻控制檯的任何錯誤渲染。
有關這個問題的任何想法,讚賞。謝謝。
關閉串入警戒第一,在初始化創建一些的console.log和渲染視圖中,瞭解您的應用程序停止 –
哦,對了。這是我的錯字。 – titi
你解決了這個問題嗎? –