Невозможно получить из правильного местоположения с аксиосами в nuxt - PullRequest
0 голосов
/ 28 декабря 2018

Проблема, которая возникает у меня, заключается в том, что axios игнорирует мой путь GET при публикации для сборки, но работает как положено в режиме разработки.
Я использую следующее для извлечения локальных файлов .html и анализа их в моемvue component.

<template>
  <div>
    <div v-html="message"></div>
  </div>
</template>

<script>

import axios from 'axios';

export default {
  data () {
    return {
      message: '',
    }
  },
  async mounted(){
    const mypath = 'http://***.com/posts/' + this.$route.params.post + '.html';
    const ip = await this.$axios.$get(mypath);
    this.message = ip;
  }
}
</script>

Это .vue находится по адресу "pages / blogs / posts / _post.vue"
Мои файлы .html находятся в "static / posts / examplepost.html"

При работе в режиме разработки, если я изменяю первую часть пути на "http://localhost:3000/posts/" или просто" / posts / ", все работает отлично.
Однако, когда я публикую вweb и ссылка на URL поста в блоге, я получаю 404 по следующему пути: "https://***.com/blogs/posts/examplepost.html"
Почему это работает в режиме разработки, а не при сборке?

Я пытался переместить сообщения в"/ blogs / posts /" и попытался создать новый экземпляр axios и установить baseURL непосредственно в моем компоненте и получить те же результаты.

1 Ответ

0 голосов
/ 28 декабря 2018

Обнаружена проблема.
Проблема заключалась в том, что я использовал <a> для создания своих ссылок на отдельные страницы, созданные "_post.vue"

<a :href="'posts/' + blog.link">

Использование <nuxt-link>, как и везде рекомендуется, исправлена ​​ошибка:

<nuxt-link :to="'posts/' + blog.link">
...