ElementUI+el-dropdown函数触发事件

最近使用element想实现一下效果,当点击下拉框时会触发事件填充数据,然后显示数据,但是当点击下拉框的时候怎么也触发不了函数。
官网的写法:
在trigger属性设置为click即可。除了使用假数据,从后台获取数据我从来没有运行成功过….

<el-col :span="12">
    <span class="demonstration">click 激活</span>
    <el-dropdown trigger="click">
      <span class="el-dropdown-link">
        下拉菜单<i class="el-icon-arrow-down el-icon--right"></i>
      </span>
      <el-dropdown-menu slot="dropdown">
        <el-dropdown-item>黄金糕</el-dropdown-item>
        <el-dropdown-item>狮子头</el-dropdown-item>
        <el-dropdown-item>螺蛳粉</el-dropdown-item>
        <el-dropdown-item>双皮奶</el-dropdown-item>
        <el-dropdown-item>蚵仔煎</el-dropdown-item>
      </el-dropdown-menu>
    </el-dropdown>
  </el-col>

我的方式:@click.native=”函数”>,完美解决问题(网上找来的…)

 <el-dropdown  trigger="click" @click.native="getChild(cate.nodeId)">
                              <span class="el-dropdown-link">
                                 {{cate.categoryName}}<i class="el-icon-arrow-down el-icon--right">i>
                              span>
                                <el-dropdown-menu slot="dropdown">
                                    <el-dropdown-item v-for="child in childList" v-text="child.categoryName" >面板el-dropdown-item>
                                el-dropdown-menu>
                            el-dropdown>

js代码:

 getChild:function (childId) {
                for(var i in app.cateList){
                    if(app.cateList[i].parentId == childId && app.childList.indexOf(app.cateList[i]) == -1){
                        app.childList.push(app.cateList[i]);
                    }
                }
            }

注:如果在el-dropdown 里面设置了trigger=”click”属性,即为该控件在点击的时候出现数据。如果没有设置该属性,则ElementUI默认为鼠标悬浮事件hover 激活。如果数据在页面写成假数据,那完全没有问题,当鼠标悬停的时候会显示数据。但是如果数据是从后台取到的并且设置的是click事件这里就有一个问题,即:我的是点击才触发函数,当没点击的时候,鼠标悬停在控件上面(此时是没有数据的)会显示出一个”>”的图标。所以在设置为click的时候,虽然设置了trigger=”click”属性也还是触发不了事件,当然还是设置的好。

你可能感兴趣的:(#,ElementUI,ElementUI,dropdown)