首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >style.display在Vue JS样例项目中不起作用

style.display在Vue JS样例项目中不起作用
EN

Stack Overflow用户
提问于 2020-04-11 22:58:05
回答 1查看 323关注 0票数 0

我正在完成一个渐变样例项目,直到最后一点重新发布函数。我有两个名称表单,一个用于在按键时创建样本,另一个用于编辑功能,通过一个按钮运行,但名称仍然在enter aswwell上收集。我试图隐藏第一个表单(完全不使用),而显示第二个要使用的表单。表单如下所示:

代码语言:javascript
复制
 <b-form-input
        id="name"
        size="lg"
        type="text"
        class="search-bar-2"
        placeholder="Name Your Swatch, Enter Hit the Save Edit Button"
        v-model="value3"
        @keypress="republishSwatch"
        >
</b-form-input>

在保存按钮中,republishSwatch方法也被设置为点击功能。但在这里,我只是想显示表单,当前代码不工作,它似乎没有得到元素"search-box-2“的类。代码是显示编辑按钮,可以工作,并隐藏/显示替代表单,第一个表单与上面的类search-box-1相同。我可以给他们一个不同的id,因为我需要这个名字。

代码语言:javascript
复制
   let oldForm = document.querySelector('.search-box-1');
   let newForm = document.querySelector('.search-box-2');
   let saveEditBtn = document.getElementById('saveBtn');
   saveEditBtn.style.display = 'block';
   oldForm.style.display = 'none';
   newForm.style.display = 'block';

在css中,第二个表单被隐藏为"display: none! important“,必须使用important,否则它不会隐藏。它的Bootstrap Vue,如果我可以让它工作,我可能只需要在一个函数中收集名称,然后通过按钮在republish函数中运行它。

欢迎任何建议

谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-04-11 23:29:10

您应该依靠v-showv-if进行条件呈现。

您可以将data中的一个变量设置为true,并将其用于显示/隐藏字段。

代码语言:javascript
复制
<b-form-input
        id="name"
        size="lg"
        type="text"
        class="search-bar-2"
        placeholder="Name Your Swatch, Enter Hit the Save Edit Button"
        v-model="value3"
        @keypress="republishSwatch"
        v-show="shouldShow"
        >
</b-form-input>

从按钮上的侦听器内部设置shouldShow

在极少数情况下,您应该直接操作DOM。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61158794

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档