将数据传递到vuejs模板

时间:2018-03-11 10:54:44

标签: javascript php laravel laravel-5 vuejs2

我有一个支持vuejs2的Laravel应用程序。我在vuejs部分使用路由器组件。如何将类似会话的数据从laravel发送到vuejs模板。在我的刀片模板中,我使用<router-view ></router-view>来调用vue路由器组件。如何添加数据。

感谢您的帮助!

2 个答案:

答案 0 :(得分:2)

要使用vuejs路由器组件加载的页面,在该页面的页脚部分添加一个脚本。使用router push命令后,请刷新整个页面。

保持一个标志:loading。首先,保持它是真实的,以查看一些初始消息,当你得到axios响应然后使其成为假。基于此标志,显示您从axios响应中获得的数据。当然,在获得axios响应后更新最初声明的数据。 例如:

<script>
export default {
        data(){
            return {
                loading:true,
                // Others Data
            }
        },
        methods:{
            function_name (){
                this.$router.push('/');
                window.location.reload();
            }
        },
        mounted() {
            var _this = this;
            axios.get('/data').then(function (response) {
                //others data update
                _this.loading=false;
            });
        }
    }
</script>

答案 1 :(得分:1)

您可以使用axios向laravel应用程序发出get请求。

示例方法:

data() {
   return {
      data: ''
   }
},
methods: {
    getData: function () {
      axios.get("/data")
      .then((response)  =>  {
        this.data = response.data;
      }, (error)  =>  {
      })
    }
  },

请注意,您需要导入axios才能工作:

import axios form 'axios'

然后你需要在服务器端处理请求