javascript - 点击事件监听器没有反应

标签 javascript vue.js

我有一个导航栏项目,它应该在单击时调用reverseService,但从来没有这样做。

IDE表示从未使用过reverseService函数。

VueJS 开发工具警告没有问题。当我手动更改变量内容的值时,更新得很好。

HTML

<ul class="navbar-nav">
   <li class="nav-item">
       <a class="nav-link" href="#" @click="reverseService">Services</a>
   </li>
</ul>

<div :class="{{ isService? '':'section' }}" id="content">
   <div class="row" v-if="!isService">
    some content
   </div>
   <div v-else>
    other content 
   </div>
</div>

脚本

 new Vue({
    el: '#content',
    data: {
        isService: true,
    },
    methods: {
        reverseService: function () {
            this.isService = !this.isService;
            console.log(this.isService)
        }
    }

});

最佳答案

您的 Vue 实例仅控制 div (id=content),您需要将 ul 包装到 Vue 也控制的元素中:

<div id="app">
<ul class="navbar-nav">
   <li class="nav-item">
       <a class="nav-link" href="#" @click="reverseService">Services</a>
   </li>
</ul>

<div :class="{{ isService? '':'section' }}">
   <div class="row" v-if="!isService">
    some content
   </div>
   <div v-else>
    other content 
   </div>
</div>
</div>

在您的脚本中:

new Vue({
    el: '#app',

关于javascript - 点击事件监听器没有反应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54259126/

相关文章:

css - 具有不同背景颜色的相同组件

javascript - 使用随机化器破坏 If/Else 语句

javascript - 数字串不能以零开头。其他解决方案?

javascript - 如何在我的 Web 应用程序中检索和显示 Outlook/Exchange 日历事件?

javascript - 主脚本中的 Vuejs 模板限制

javascript - 在 Vue 中,哪个 watcher 会先被调用?对物体的深度观察,还是对该物体的属性的观察?

javascript - 从变量引用时 setAttribute 不是函数

javascript - 具有动态 v 模型的 VueJS 网格多复选框

javascript - 读取 jQuery 中元素的每一行

javascript - 我可以使用 JS 等待多个 CSS 动画吗?