Делать для начала все самому без фреймворков или же сразу начинать учить фреймворк?
Давайте определимся с целями. Для обучения? Делать свои велосипеды без опыта работы с имеющимися решениями - это тупо JS подтянуть. Для этого есть более продуктивные способы. Пилить же свой фреймворк это обычно дело хоть и веселое но не продуктивное. Хотя польза есть конечно. Но лучше смотреть как сделано в популяронм решении и пробовать сделать так же тогда-уж.
Словом учим JS на нормальном уровне. А учить фреймворки никогда не нужно, их нужно понимать и разираться. Заучиывание никому не поможет.