相关疑难解决方法(0)

v-if是否位于DIV上,但始终使用Vue.js显示其内容?

使用Vue.js,我需要切换一个父级div,但始终显示子级div。

<div v-if="showparent" class="parent">
  <div class="child"> 
    Child should always be visible
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

据我所知,使用Vue.js是不可能的。v-ifshowparent为false 时,该指令将删除所有div的内部。

任何想法如何实现这一目标?

vue.js

7
推荐指数
2
解决办法
1857
查看次数

有条件地渲染父元素,保持内部html

有条件地显示父元素是否有任何内置方式?

为了显示:

<a v-show-but-keep-inner="someCondition">
    <span>This is always rendered no matter what</span>
</a
Run Code Online (Sandbox Code Playgroud)

vue.js vuejs2

7
推荐指数
3
解决办法
4819
查看次数

使用 v-if 包裹元素,否则只有内容本身

我在指令中生成了一组元素v-for,如果对象具有url属性,则将其包装在<a>标签中 - 否则,我需要它来发出元素本身。

例如,

var data = {
    events: [
        {name: "Foo"},
        {name: "Bar", url: "google.com"}
    ]
};
Run Code Online (Sandbox Code Playgroud)

以及相应的 HTML:

<div v-for="event in events">
    <span>{{event.name}}</span>
</div>
Run Code Online (Sandbox Code Playgroud)

我需要的是仅当存在属性时才将其包装<span>在 an 中。<a v-bind:href="url">url

我知道我可以使用 av-if并使用两个跨度,例如:

<span v-if="!event.url">{{event.name}}</span>
<a v-bind:href="event.url" v-if="event.url">
    <span>{{event.name}}</span>
</a>
Run Code Online (Sandbox Code Playgroud)

然而,在我的用例中,<span>这里的元素可能很大,我不想重复自己只是为了包装该元素。

有没有办法实现上述的条件换行?

vue.js

5
推荐指数
1
解决办法
4224
查看次数

标签 统计

vue.js ×3

vuejs2 ×1