2017-02-21 8 views
1

私はvue.jsとwp rest APIを使用してプロジェクトをテーマにしたWordPressをやっています。しかし今はデータをレンダリングできません。ここに私のコードは、私は正しいことをやっている場合、私は任意の偶数vue.jsに新しいですので、私は、知らないWordPressの残りのAPIデータをvue.jsでレンダリングする方法

app.js

var App = Vue.extend({}); 
 

 
var postList = Vue.extend({ 
 
    template:'#post-list-template', 
 
    data: function(){ 
 
     return { 
 
      posts: '' 
 
     } 
 
    }, 
 

 
    ready: function(){ 
 
     posts = this.$resource('/wp-json/wp/v2/posts?per_page=20'); 
 

 
     posts.get(function(posts){ 
 
      this.$set('posts', posts); 
 
     }) 
 
    } 
 
}) 
 

 

 

 
var router = new VueRouter({ 
 
    routes: [ 
 
    { path: '/', component: postList } 
 
    ] 
 
}) 
 

 
new Vue({ 
 
    el: '#app', 
 
    router: router, 
 
    template: '<router-view></router-view>' 
 
}) 
 

 

 
**index.php**
<?php get_header(); ?> 
 

 
    <div class="white-wrap"> 
 
     <div id="app"> 
 

 
      <router-view></router-view> 
 

 
     </div> 
 
    </div> 
 

 

 
<template id="post-list-template"> 
 
    <div class="container"> 
 
     <div class="post-list"> 
 
      <article v-for="post in posts" class="post"> 
 
       <div class="post-content"> 
 
        <h2>{{ post.title.rendered }}</h2> 
 
       </div> 
 
      </article> 
 
     </div> 
 
    </div> 
 

 
</template> 
 

 
<?php get_footer(); ?>

です言語私はちょうど初心者です。

+1

エラーが発生していますか? – Saurabh

+0

こんにちは、qick responeに感謝します。私はここで何かエラーが出なかったと思う。 これはすべて取得済みです。リソースの読み込みに失敗しました:サーバーがステータス403(禁止)https://mozbar.moz.com/bartender/url-metricsで応答しました Bartender APIアクセスが拒否されました。 chrome-extension://eakacpaijcpapndcfffdgphdiccmpknp/scripts/content_page.js:2560 これは私のMozillaのエラーと思われます –

+0

@TruongManh vue-resourceはインストールされていますか?私はあなたが 'this。$ resource'を使用しているのを見ています –

答えて

0

データ機能内では、postsを空の文字列として返します。空の配列でなければなりません。

今すぐ、v-forを使用して一連のポストをループしようとしています。あなたはポストオブジェクトの配列をループする必要があります。

また、代わりにready機能の問題の世話をする必要がありますbeforeCreate

のような以前のフックを使用します。

関連する問題