I've spent many hours to investigate the strange behavior in our large app. Finally I've found it, it seems so furious that I just have no idea what to do next with nuxt and with our templates among the whole application.
As usual, I created the separate repo with very simple code to demonstrate it: https://github.com/Kasheftin/nuxt-bug4. I'll show two bugs (alhough they may have one source).
I suppose the reason is this component we use as a wrapper (everything else in the demo is hello world):
<template>
<div class="container">
<div class="col -menu">
<slot/>
</div>
<div class="col -content">
<nuxt-child/>
</div>
</div>
</template>
If the user goes to the index page, we show him menu column only using the index page that looks like:
<template>
<TwoColumns>
MENU GOES HERE
</TwoColumns>
</template>
Then he follows the nested route and the target page placed into the nuxt-child of the wrapper.