JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/1.0.16/vue.min.js"></script>
<script src="https://getfirebug.com/firebug-lite-debug.js"></script>
<div id="app">
    <ul>
        <li v-for="book in getSelectedBooks()">
            {{ book.title }}
        </li>
    </ul>
</div>

JavaScript

var app = new Vue({
    el: '#app',
    data: {
        shelfs: [{
            selected: false,
            books: [{
                title: 'Lorem ipum'
            }, {
                title: 'Dolor sit amet'
            }]
        }, {
            selected: true,
            books: [{
                title: 'Ipsum lorem'
            }, {
                title: 'Amet sit dolor'
            }]
        }]
    },

    methods: {
        getSelectedBooks: function () {
        		var books = [],
            		shelfs = this._data.shelfs;
            
            for (var i = 0; i < shelfs.length; i++) {
            		if (shelfs[i].selected) {
                		books.push.apply(books, shelfs[i].books);
                }
            }
            
            console.log(books);
            return books;
        }
    }
});