首页 > 解决方案 > 在加载了 Vue JS 的 Laravel 刀片中访问 onclick 事件

问题描述

我收到了一个包含 soms Vue JS 单文件组件的 Laravel 项目。除此之外,所有的 HTML 都在刀片模板中。他们只在少数特定部分使用 Vue JS 组件,以及项目中的 jQuery 组件,所有这些都通过 webpack 捆绑到一个 JS 文件中。

刀片文件的设置:

<div id="app">
 <!-- Inside of this goes all the HTML code along with the Vue single file components -->
 <div id="someElement"></div>
</div>

在 Vue JS 文件中,app div 在 App 类中的地址如下:

class App {
   init(){
      new Vue({
                el: '#app',
                delimiters: ['<%', '%>'],
                components: {

                    // Vendors
                    'slick': slick,

                    // Components
                    'navtoggle' : navtoggle,
                    'alert' : alert,
                    'tabsslider' : tabsslider,
                    'tabs' : tabs,
                    'tab' : tab,
                    'accordion' : accordion,
                    'popup' : popup,
                    'counter' : counter,
                    //'sticky-top' : stickyTop,
                    'codesnippet' : codesnippet,
                    'timer' : timer,

                    // Google Maps
                    //'googlemaps' : googlemaps,

                    // Form Elements
                    'frmbutton' : frmbutton,
                    'frmcheckbox' : frmcheckbox,
                    'frmdatepicker' : frmdatepicker,
                    'frminput' : frminput,
                    'frmradio' : frmradio,
                    'frmselect' : frmselect,
                    'frmtextarea' : frmtextarea
                },
           }
       }

但是,我们希望在刀片文件的底部实现一些带有一些 onclick 事件的额外标签,以便我们可以创建一些额外的动态交互(计数器等)。JavaScript 的加载工作得很好,但只要我们尝试如下:

    document.getElementById('someElement').onclick = function(){
       console.log("something happens");
    }

什么都没发生。onclick 事件似乎没有被触发。我还没有找到任何解释。

有谁知道这可能是什么原因?

标签: javascriptjquerylaravelvue.js

解决方案


推荐阅读