I have one more issue encountered. Whenever my route params changed, the props that I passed to that component doesn't get updated.
On the first load, the prop value gets updated, but when I go to the next step/route, the $route gets updated and also the method inside the watch gets executed, but the value of the prop that is passed is the same as the value of the first step/route. Then, when I go to the next step/route again, the value of the component of the third step/route is supposedly the value of the component of the second step/route. Seems like the value of the props are 1 step behind the actual route.
Here is how I passed the prop:
<el-repeater :element.sync="element"></el-repeater>
Edit: But all of the data that can be seen in the UI are updated and correct, and those data are based on the prop that has been passed.