Как подключать шаблоны в Vue.js и еще вопрос по структуре приложения?
var Foo = Vue.extend({
    template: '#view1'
})
var Bar = Vue.extend({
    template: '#view2'
})
В коде страницы <div class="hiden">
    <div id="view2">
        ......
    </div>
    <div id="view2">
       ...
    </div>
</div>
Если строка начинается с # будет использоваться  querySelector и использовать innerHTML выбранного элемента в качестве строки шаблона
Как сказано выше, копайте в сторону require, он может грузить js динамически, есть возможность загрузки текста(html) шаблоны и json.  Заведите директорию template где будут хранится шаблоны.