JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://rawgithub.com/jashkenas/underscore/master/underscore.js"></script>
<script src="https://rawgithub.com/jashkenas/backbone/master/backbone.js"></script>
<script src="https://rawgithub.com/PaulUithol/Backbone-relational/master/backbone-relational.js"></script>

JavaScript

var Phone = Backbone.RelationalModel.extend();

var Contact = Backbone.RelationalModel.extend({
    relations: [
        {
            type: Backbone.HasMany,
            key: 'phones',
            relatedModel: Phone,
            reverseRelation: {
                key: 'contact'
            }
        }
    ]
});

var contactData = {
    "id": "contact-2",
    "phones": []
};

var contact = new Contact(contactData);

contact.on('change', function() {debugger
    console.log( 'contact:change');
});

contact.on('all', function(evt) {
    console.log( 'contact:' + evt );
});

contact.set(contactData);

var contactData2 = {
    "id": "contact-2",
    "phones": ['123456']
};

contact.set(contactData2);