https://github.com/SergeiPleshkov/create-nuxt-app
Additional Details
Href attribute is not attached to '' tag during SSR if 'href' was passed as not defined prop.
Serve reproduction repo, inspect the source code.

source code from devtools' network tab

document ready

Passing not defined dynamic prop to '
Href attribute appears after browser render.
You should not need to set the href as NuxtLink will transform to an a tag on the server side automatically.
Example

https://github.com/manniL/lichter.io/blob/main/components/Navbar.vue#L36-L40
I know how to handle it to make it work, but i think this behavior is inconsistent. When you create dynamic component like this
<component
:is="tag"
:href="href"
:target="target"
:to="to">
</component>
that can be either <a> or <n-link>, so there should be all props. Once again, i know how to make it work using v-bind or separate template, i created an issue because i think this is a bug.
Okay, so to clarify that:
The behavior you are expecting is that NuxtLink should use a set href prop (if provided)?
No, i expect the behavior of :href="undefined" and no href prop at all to be equal. So you can use this component
<component
:is="tag"
:href="href"
:target="target"
:to="to">
</component>
either with props {tag: 'a', href: 'google.com', target: '_blank'} and with {tag: 'n-link', to: '/home'} and get href attribute already existing in page source code in both cases
Got it!
As you mentioned, the same issue appears with RouterLink too, right?
Yes, the same behavior.
Then https://github.com/vuejs/vue-router might be a better place for this issue. <NuxtLink> inherits <RouterLink> behavior 鈽猴笍
Thanks for your contribution to Nuxt.js!
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.
If you would like this issue to remain open:
Issues that are labeled as pending will not be automatically marked as stale.
Most helpful comment
No, i expect the behavior of
:href="undefined"and no href prop at all to be equal. So you can use this componenteither with props
{tag: 'a', href: 'google.com', target: '_blank'}and with{tag: 'n-link', to: '/home'}and get href attribute already existing in page source code in both cases