Im new to backbone and there is one problem I cant figure out. I use backbone with require.js. When I want to render some view for the first time (when I reload page in browser) index.html shows up immediately but then it is hidden for about 2 seconds and then showed again with rendered templates. If I then navigate between views (without hitting refresh) it works smooth, but that initial render does something wrong. Here is my code:
View:
define(['jquery','underscore','backbone', 'text!../../../templates/home/HomeView.tpl'], 
function($, _, Backbone, HomeTemplate)
{
var HomeView = Backbone.View.extend(
{
    events:{
    },
    render: function () 
    {
        var template = _.template(HomeTemplate);
        this.$el.html(template);
        return this;
    }
});
return HomeView;
});
Router:
define(['jquery','underscore','backbone'], 
function($, _, Backbone)
{ 
var container = $("#container");
var AppRouter = Backbone.Router.extend(
{                       
    routes: 
    {
        "": "home"
    },
    home: function()
    {
        require(['views/home/HomeView'], 
        function(HomeView)
        {
            var Home = new HomeView({el: container});
            Home.render();
        });
    }
}); 
var initialize = function()
{
    var app_router = new AppRouter();
    Backbone.history.start();   
};
return { initialize: initialize };
});
I get no error in console. Is this behavior normal?