質問編集履歴

4

ff

2018/02/17 09:06

投稿

holic
holic

スコア134

test CHANGED
File without changes
test CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  使用しているフレームワーク
6
6
 
7
- ◎vue.js(2.6.x)
7
+ ◎vue.js(2.5.x)
8
8
 
9
9
 
10
10
 

3

ss

2018/02/17 09:06

投稿

holic
holic

スコア134

test CHANGED
File without changes
test CHANGED
@@ -336,4 +336,8 @@
336
336
 
337
337
 
338
338
 
339
+ ちなみに上の記述はhtmlにも記述をしています。それは正常に表示されますので、json取得は成功していると思われます。
340
+
341
+ templeteの中だと正しく動いてくれない。
342
+
339
343
  vue.jsに詳しい方、ご教示いただければ幸いです。

2

たいと

2018/02/17 06:18

投稿

holic
holic

スコア134

test CHANGED
@@ -1 +1 @@
1
- vue.js vou-routerを使ったtempleteの中にjson情報を入れたい
1
+ vue.js vou-routerを使ったtemplateの中にjson情報を入れたい
test CHANGED
File without changes

1

dd

2018/02/17 06:16

投稿

holic
holic

スコア134

test CHANGED
File without changes
test CHANGED
@@ -104,16 +104,6 @@
104
104
 
105
105
  <li><router-link to="/">ホーム</router-link></li>
106
106
 
107
- <li><router-link to="/001">記事その1</router-link></li>
108
-
109
- <li><router-link to="/002">記事その2</router-link></li>
110
-
111
- <li><router-link to="/003">記事その3</router-link></li>
112
-
113
- <li><router-link to="/004">記事その4</router-link></li>
114
-
115
- <li><router-link to="/005">記事その5</router-link></li>
116
-
117
107
  </ul>
118
108
 
119
109
  <ul v-for="post in posts">
@@ -172,6 +162,162 @@
172
162
 
173
163
  <div class="page page--message"><p>SingleBlogのテンプレートです</p>
174
164
 
165
+ </div>` }
166
+
167
+
168
+
169
+ var Home = { template: `
170
+
171
+ <div class="page page--home">
172
+
173
+ <h2>ここはホームです、一覧表示させます<h2>
174
+
175
+ <ul v-for="post in this.posts">
176
+
177
+ <li>
178
+
179
+ <a v-bind:href="post.link" target="_blank">
180
+
181
+ {{post.title.rendered}}<br>
182
+
183
+ </a>
184
+
185
+ </li>
186
+
187
+ </ul>
188
+
189
+ </div>
190
+
191
+ ` }
192
+
193
+
194
+
195
+ //ルーティングの設定
196
+
197
+ var routes = [
198
+
199
+ {
200
+
201
+ path: '/',
202
+
203
+ component: Home,
204
+
205
+ meta: {
206
+
207
+ title: 'Home',
208
+
209
+ desc: 'Homeの説明'
210
+
211
+ }
212
+
213
+ },
214
+
215
+ {
216
+
217
+ path: '/:id',
218
+
219
+ component: SingleBlog,
220
+
221
+ meta: {
222
+
223
+ title: 'Message',
224
+
225
+ desc: 'Messageの説明'
226
+
227
+ }
228
+
229
+ }
230
+
231
+ ]
232
+
233
+
234
+
235
+ var router = new VueRouter({
236
+
237
+ //mode: 'history',
238
+
239
+ routes: routes,
240
+
241
+ scrollBehavior (to, from, savedPosition) {
242
+
243
+ return { x: 0, y: 0 }
244
+
245
+ }
246
+
247
+ });
248
+
249
+
250
+
251
+ //titleとdescriptionを変更
252
+
253
+ router.beforeEach((to, from, next) => {
254
+
255
+ document.title = to.meta.title;
256
+
257
+ document.getElementsByTagName("meta")["description"].setAttribute('content',to.meta.desc);
258
+
259
+
260
+
261
+ next();
262
+
263
+ });
264
+
265
+
266
+
267
+ var app = new Vue({
268
+
269
+ router,
270
+
271
+ el:'#wrapper',
272
+
273
+ data: {
274
+
275
+ posts: []
276
+
277
+ },
278
+
279
+ created: function(){
280
+
281
+ this.getPosts();
282
+
283
+ },
284
+
285
+ methods: {
286
+
287
+ getPosts: function(){
288
+
289
+ axios.get( 'http://026.test55.net/wp/wp-json/wp/v2/member/?_embed' )
290
+
291
+ .then( response => {
292
+
293
+ this.posts = response.data;
294
+
295
+ } )
296
+
297
+ .catch( error => {
298
+
299
+ window.alert( error );
300
+
301
+ } );
302
+
303
+ }
304
+
305
+ }
306
+
307
+ })
308
+
309
+ ```
310
+
311
+
312
+
313
+ 実現したいことは
314
+
315
+ axiosを使ってpostsにjsonデータをセットして、その値を
316
+
317
+ templete設定をした下記の記述に読み込ませたいと考えていたのですが、表示されず、頭を悩ませています。
318
+
319
+ ```js
320
+
175
321
  <ul v-for="post in posts">
176
322
 
177
323
  <li>
@@ -186,178 +332,8 @@
186
332
 
187
333
  </ul>
188
334
 
189
- </div>` }
190
-
191
-
192
-
193
- var Home = { template: `
194
-
195
- <div class="page page--home">
196
-
197
- <h2>ここはホームです、一覧表示させます<h2>
198
-
199
- <ul>
200
-
201
- <li><router-link to="/001">記事その1</router-link></li>
202
-
203
- <li><router-link to="/002">記事その2</router-link></li>
204
-
205
- <li><router-link to="/003">記事その3</router-link></li>
206
-
207
- <li><router-link to="/004">記事その4</router-link></li>
208
-
209
- <li><router-link to="/005">記事その5</router-link></li>
210
-
211
- </ul>
212
-
213
- </div>
214
-
215
- ` }
216
-
217
-
218
-
219
- //ルーティングの設定
220
-
221
- var routes = [
222
-
223
- {
224
-
225
- path: '/',
226
-
227
- component: Home,
228
-
229
- meta: {
230
-
231
- title: 'Home',
232
-
233
- desc: 'Homeの説明'
234
-
235
- }
236
-
237
- },
238
-
239
- {
240
-
241
- path: '/:id',
242
-
243
- component: SingleBlog,
244
-
245
- meta: {
246
-
247
- title: 'Message',
248
-
249
- desc: 'Messageの説明'
250
-
251
- }
252
-
253
- }
254
-
255
- ]
256
-
257
-
258
-
259
- var router = new VueRouter({
260
-
261
- //mode: 'history',
262
-
263
- routes: routes,
264
-
265
- scrollBehavior (to, from, savedPosition) {
266
-
267
- return { x: 0, y: 0 }
268
-
269
- }
270
-
271
- });
272
-
273
-
274
-
275
- //titleとdescriptionを変更
276
-
277
- router.beforeEach((to, from, next) => {
278
-
279
- document.title = to.meta.title;
280
-
281
- document.getElementsByTagName("meta")["description"].setAttribute('content',to.meta.desc);
282
-
283
-
284
-
285
- next();
286
-
287
- });
288
-
289
-
290
-
291
- var app = new Vue({
292
-
293
- router,
294
-
295
- el:'#wrapper',
296
-
297
- data: {
298
-
299
- posts: []
300
-
301
- },
302
-
303
- created: function(){
304
-
305
- this.getPosts();
306
-
307
- },
308
-
309
- methods: {
310
-
311
- getPosts: function(){
312
-
313
- axios.get( 'http://026.test55.net/wp/wp-json/wp/v2/member/?_embed' )
314
-
315
- .then( response => {
316
-
317
- this.posts = response.data;
318
-
319
- } )
320
-
321
- .catch( error => {
322
-
323
- window.alert( error );
324
-
325
- } );
326
-
327
- }
328
-
329
- }
330
-
331
- })
332
-
333
335
  ```
334
336
 
335
337
 
336
338
 
337
- 実現したいことは
338
-
339
- axiosを使ってpostsにjsonデータをセットして、その値を
340
-
341
- templete設定をした下記の記述に読み込ませたいと考えていたのですが、表示されず、頭を悩ませています。
342
-
343
- ```js
344
-
345
- <ul v-for="post in posts">
346
-
347
- <li>
348
-
349
- <a v-bind:href="post.link" target="_blank">
350
-
351
- {{post.title.rendered}}<br>
352
-
353
- </a>
354
-
355
- </li>
356
-
357
- </ul>
358
-
359
- ```
360
-
361
-
362
-
363
339
  vue.jsに詳しい方、ご教示いただければ幸いです。