Проблема здесь в том, что настройки наследуются от BaseView;наследуется, а не копируется.Если бы это было строковое значение, оно было бы по существу скопировано, но в массивах и объектах javascript они передаются по ссылке, а не по значению, поэтому, когда объект создается, он в конечном итоге указывает на тот же объект.
Исправлениечтобы создать метод инициализации в вашем BaseView и добавить эту строку:
this.settings = {};
Тогда, конечно, вы захотите убедиться, что вы вызываете инициализацию BaseView для каждого из ваших подпредставлений.Вы можете сделать это с помощью:
BaseView.prototype.initialize.apply(this, arguments);
например, http://jsfiddle.net/taxilian/PDmN8/1/
Обратите внимание, что этот метод инициализации элементов должен выполняться для всех элементов массива или объекта, иначе у вас возникнет та же проблема,Вы также можете создать конструктор и сделать это там, но я никогда не понимал, как это работает в классах Backbone, и не потратил время на то, чтобы по-настоящему сесть и разобраться = =