在 vue.js 模板中显示主机名

showing the hostname in a vue.js template

假设我有这样的东西:

<q-input v-model="form.uuid" inverted-light color="white" stack-label="Your subdomain:" @blur="$v.form.uuid.$touch"
    :error="$v.form.uuid.$error"
    suffix=".website.com">
</q-input>

现在 .website.com 是硬编码的,但是如果我想让它基于用于访问网站的主机名怎么办? IE。如果我去 mydomain.tld 它不会显示 website.com - 它会显示 mydomain.tld.

有什么想法吗?

谢谢!

这里的困难部分是删除子域。我不知道这样做的可靠方法。

只需在模板中获得 host 渲染就足够简单了:

new Vue({
  el: '#app',
  
  data () {
    return {
      currentUrl: location.toString(),
      host: location.host
    }
  }
})
<script src="https://unpkg.com/vue@2.6.10/dist/vue.js"></script>

<div id="app">
  <p>Full: {{ currentUrl }}</p>
  <p>Host: {{ host }}</p>
</div>

显然它需要针对原始示例进行调整,例如 :suffix="'.' + host"