【问题标题】:VueJS and WP Rest APIVueJS 和 WP Rest API
【发布时间】:2017-07-26 17:53:36
【问题描述】:

这里有个小问题, 我想从 Wordpress Rest API 获取帖子(json 格式),但我不明白我在这里缺少什么。 有人可以帮助我吗?

var App = new Vue({
el : '#app',
data: {
    posts: ''
},
beforeCreate: function(){
    console.log('I am the first one!');
},
mounted: function(){
    console.log('mounted fired');
    posts = this.$resource('http://volkov.co.il/wp-json/wp/v2/posts?per_page=3');
    posts.get(function(response){
        this.$set('posts', response);
    });
}});

这是我的html:

        <div id="app">

        <div class="row">
            <div class="large-12 columns">
                <article class="post-article" v-for="post in posts">
                    <h1>post title</h1>
                    <h3>{{ post.id }}</h3>
                </article>
            </div>
        </div>

    </div>

    <script src="https://unpkg.com/vue/dist/vue.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/vue-resource/1.3.4/vue-resource.js"></script>
    <script src="js/app.js" charset="utf-8"></script>

如您所见,我正在使用 vue-resource 库。 我正在从本地计算机运行此代码。 我在这里想念什么? 谢谢

【问题讨论】:

    标签: vue.js vue-resource wordpress-rest-api


    【解决方案1】:

    我相信 this 是正确的,因为您使用的是 VueResource,但如果不是,您可以使用任何技术 detailed here 来确保它是正确的。

    也就是说,$set 有三个参数。

    this.$set(this, 'posts', response);
    

    【讨论】:

    • 我得到了数据,但是我无法在 AJAX 响应后通过数据运行 v-for...snag.gy/5Nb871.jpg
    • @vol4ikman 如果我从您问题中的 URL 中获取数据并将其与您的代码一起使用,它似乎可以工作。 codepen.io/Kradek/pen/PKqpMK?editors=1010
    • 您使用的数据就像已经存在的对象一样。我需要从 Ajax 获取这些数据,然后才将其放入帖子对象和运行循环中。
    • @vol4ikman 是的,我明白了。这是一个例子,如果你真的得到了你在first评论中所说的数据,那么你的代码就可以工作。我在回答中展示了如何设置您在 ajax 调用中收到的数据。如果你的数据仍然没有显示在你的代码中,那么问题就出在你没有显示的地方。
    猜你喜欢
    • 1970-01-01
    • 2017-10-17
    • 1970-01-01
    • 2018-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-24
    • 2017-05-02
    相关资源
    最近更新 更多