使用Vue通过页面传递数据

时间:2016-10-21 17:26:34

标签: ecmascript-6 vue.js

我在函数中接收数据,此函数需要加载新页面。我用Jquery使用方法.load()来做这个,但是我的vue方法得到一个错误,说找不到另一个页面中的元素。我相信这可能是一个更好的方法,但我不知道我怎么能通过vue组件传递数据

static foo(a,b){
    $('#maindiv').load("/newPage");
    new Vue({
        el: '#newPageElem',
        data: {
            vueVar1:a
            vueVar2:b
        },

    });
}

我该怎么做?我相信使用Jquery并不是实现这一目标的最佳方法,但我不知道如何使用vue更改路由并在它们之间传递参数。

感谢。

1 个答案:

答案 0 :(得分:3)

您可以在此处查看vue-routerhttp://router.vuejs.org/en/essentials/getting-started.html - 它可以让您处理所有客户端路由。

要进行http调用以从服务器接收数据,您可以使用vue-resourcehttps://github.com/vuejs/vue-resource

最好避免将jQuery与Vue混合,因为Vue负责渲染DOM。如果你使用jQuery进行任何DOM更改,它将在下一个DOM更新中被Vue覆盖。所以你最终会花很多时间进行调试。

此外,您无法在函数内实例化Vue应用程序,如代码示例所示,除非您在页面加载时调用该函数。理想情况下,前几行脚本应启动Vue应用程序。