如何在 Vuetify v-tooltip 中添加换行符

How to add a newline in Vuetify v-tooltip

我一直是 vuetify 的 <v-tooltip>,我在他们的 API 中找不到任何属性,所以我可以使用 \n<br /> 在里面创建一个换行符工具提示模板。

例子:

    <v-tooltip>
      <template v-slot:activator="{ on }">
        <v-btn>
          button
        </v-btn>
      </template>
      <span>First line \n second line</span>
    </v-tooltip>

这仍然会显示

First line second line

而不是

First line 
second line

插入 p 标签而不是 span,这将分隔成两行。

添加了 mb-0 以删除多余的间距。

<!DOCTYPE html>
<html>
<head>
  <link href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900" rel="stylesheet">
  <link href="https://cdn.jsdelivr.net/npm/@mdi/font@4.x/css/materialdesignicons.min.css" rel="stylesheet">
  <link href="https://cdn.jsdelivr.net/npm/vuetify@2.x/dist/vuetify.min.css" rel="stylesheet">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, minimal-ui">
</head>
<body>
  <div id="app">
    <v-app>
      <v-main>
        <v-tooltip bottom>
          <template v-slot:activator="{ on, attrs }">
            <v-btn
              color="primary"
              dark
              v-bind="attrs"
              v-on="on"
            >
              Button
            </v-btn>
          </template>
          <p>Tooltip</p>
          <p class="mb-0">Tooltip2</p>
        </v-tooltip>
      </v-main>
    </v-app>
  </div>

  <script src="https://cdn.jsdelivr.net/npm/vue@2.x/dist/vue.js"></script>
  <script src="https://cdn.jsdelivr.net/npm/vuetify@2.x/dist/vuetify.js"></script>
  <script>
    new Vue({
      el: '#app',
      vuetify: new Vuetify(),
    })
  </script>
</body>
</html>

您只需将 <br />v-html 插入到您的工具提示文本中,文本将显示在新行中。

示例:

<v-tooltip top transition="fade-transition" open-delay="500">
   <template #activator="{ on, attrs }">
      ...
   </template>
   <span v-html="getTextWithNewlines"></span>
</v-tooltip>

getTextWithNewlines 是 returns 带有换行符的文本... (<br />).