Да в принципе, хрен с ним с front-end фреймворком.
Если уж следовать разделению на фронт и бек приложения, так и логика на front своя, на беке - своя, а взаимодействие через REST-API. А что выбрать - то, что вам ближе, то, что вы лучше понимаете, то, на чем вы сможете построить приложение, а не набор костылей, Vue, Angular, Marionette, React/Redux и другие инструменты - все подойдет.
Важно просто изначально заложить архитектуру frontend-приложения. Если изначально плохо продумаете структуру и взаимодействие компонент, наплачетесь!)
А собственно говоря, front-фреймворки нисколько не затачиваются под конкретный бекенд-фреймворк, неважно yii2, laravel, symphony, django, ror и прочее. Все равно общаются они посредством запросов в конечном итоге, либо в самом простом варианте: синхронная работа, когда большая часть рендеринга отдается серверу.
Я конечно видел реализации, когда на этапе запроса возвращается html и вставляется в нужное место, и даже такой бред, увы, приходилось писать, ввиду отсутствия времени и требований работы без перезагрузки отдельных форм и их валидаций, но на кой тебе в таком случае frontend-фреймворк?)))