Ты путаешь тёплое с мягким.
ES-modules - это стандарт
javascript и работает он с файлами
.js. Ни о каких
.vue он знать не знает. Нельзя просто написать
module и ожидать что оно само заработает.
Для отднофайловых компонентов сборка в любом случае нужна. Сборщики используют
loader'ы, которые собственно и творят всю магию. Когда ты пишешь
import componentName from './components/template.vue'
сборщик находит в конфиге специальный
loader для
.vue и запускает его, тот обрабатывает файл и выдаёт в результате валидный
js, который уже в свою очередь и импортируется. Вне сборщиков, в чистом браузере, поддержки
loader'ов само собой (пока?) нет.