【问题标题】:How to trigger a method at page load in vuejs?如何在 vuejs 中的页面加载时触发方法?
【发布时间】:2016-05-06 00:38:37
【问题描述】:

如何在页面加载时触发方法,例如选项卡?
例如:

<div id='wraper'>
<!-- div id menu not load -->
<div id="menu">
  <a href='#'>test</a>
  <a href='#'>test</a>
  <a href='#'>test</a>
</div>

<!-- load this content  -->
<div id="content">
konten
</div>
  
</div>  

谢谢

【问题讨论】:

  • 你到底想做什么?您要运行的“方法”是什么?我不知道 vue.js 是什么,但 JavaScript 有内置的 window.onload 事件,可以在页面加载时执行代码。 (只是谷歌“window.onload”的信息)
  • 我正在尝试这样做,以便当我单击 HTML 页面中的链接时,它会使用 jQuery 将请求的页面动态加载到 div 中。我该怎么做?
  • 啊,好吧!如果您尝试将整个网页加载到另一个页面中,那听起来您会想要使用称为 iframes 的东西(谷歌搜索它们)。基本上,您将拥有一个 iframe,并且它会有一个名称(假设您将其命名为“my_iframe”)。然后,在您的a 标签中添加target="my_iframe",它们将自动在 iframe 中打开。
  • 是的,但是给我一个例子

标签: javascript jquery vue.js


【解决方案1】:

对于 vue >= 2.0 使用mounted,之前的版本使用ready

vm=new Vue({
  el:"#app",
  mounted:function(){
        this.method1() //method1 will execute at pageload
  },
  methods:{
        method1:function(){
              /* your logic */
        }
     },
})

【讨论】:

  • 如果你不打算使用 DOM 访问,最好使用created(),因为它在进程的早期运行,如果你进行远程 api 调用,它们会更早执行
  • @Ferrybig 是的,但是 - 在这种情况下,看起来 OP 正在使用 DOM。
【解决方案2】:

此语法运行良好:

export default {
    mounted() {
      this.myMethod()
    },
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-11
    • 1970-01-01
    • 2021-10-19
    • 1970-01-01
    • 2020-05-05
    • 2012-04-09
    • 2018-05-22
    相关资源
    最近更新 更多