Могу ли я использовать axios в этом примере? - PullRequest
0 голосов
/ 20 января 2019

Я все еще новичок в веб-разработке, поэтому мне очень жаль, если ответ очевиден или информация, предоставленная мной, невелика, но я надеюсь, что этого достаточно:

Могу ли я сделать axios.post запрос в этом компоненте vue.js?

<script>

module.exports = {
  mounted() {
  
  // game code
  
  };

</script>

Позвольте мне объяснить проблему, с которой я сталкиваюсь в данный момент: я не могу импортировать axios по import axios from "axios";.Я тоже не могу использовать export default { ... }.Оба результата приводят к тому, что страница не загружается (что дает мне TypeError: «экспорт» доступен только для чтения ).Однако мне нужно получить доступ к переменной внутри кода игры, так как я хочу, чтобы axios.post, который сказал эту переменную (счет игры и некоторая дополнительная информация о json) в моей базе данных MongoDB.

Если я не могу сделать запрос отмогу ли я получить переменную из этого кода в mounted() { // game code }; и передать ее другому компоненту (и опубликовать ее оттуда)?Я искал в Интернете в течение многих часов, но, похоже, у меня ничего не работает, так что, извините, если мне кажется, что я слишком ленив, чтобы искать ответы.

Ответы [ 2 ]

0 голосов
/ 24 января 2019

Мне удалось использовать axios в части кода module.exports. Обычно я бы использовал import axios from 'axios'; и использовал axios в качестве метода в

export default {
    ...
    methods: {
        // here (axios method)
        ...

Но

module.exports = { mounted() {
     // game code
     };
Часть

не работала, если я использовал часть кода export default. Я почти уверен, что есть более элегантный способ решения всей этой проблемы, но, поскольку я новичок и все еще не совсем понимаю, как работают Vue и axios, я просто попробовал некоторые возможности включить туда axios, и один из них сработал:

module.exports = { mounted() {
     const axios = require("axios");
     // game code
     // and later, for example: axios.post(...)...
     };

Сначала я подумал, что это не сработает, поскольку моя IDE не распознает методы axios, но фактически отправляет данные в мою БД, поэтому он работает.

0 голосов
/ 20 января 2019

Если вам нужен простой способ использования axios в вашем компоненте, вы должны сначала запустить команду из терминала:

npm install --save axios

Оттуда вы сможете импортировать axios в свой компонентвот так:

<script>
 import axios from 'axios';
 export default {
  created() {
   axios.post()
  }
 }
</script>

Для получения дополнительной информации проверьте: https://www.npmjs.com/package/axios

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...