我还是Web开发的新手,如果答案很明显或我提供的信息不多,我真的很抱歉,但是我希望这足够了:
我可以在此vue.js组件中发出 axios.post 请求吗?
<script>
module.exports = {
mounted() {
// game code
};
</script>
现在让我解释一下我遇到的问题:我无法通过import axios from "axios";
导入axios。我也不能使用export default { ... }
。两者都会导致页面无法加载(给我一个 TypeError:“ exports”是只读的)。但是,我需要在游戏代码中访问一个变量,因为我想axios.post将该变量(游戏得分和更多json信息)发布到我的MongoDB数据库中。
如果我不能从那里发出请求,是否可以从mounted() { // game code };
中的代码中获取一个变量并将其传递到另一个组件(并从那里发布)?我在互联网上搜索了许多小时,但似乎对我没有任何帮助,所以再次抱歉,如果我似乎懒得搜索答案。
答案 0 :(得分:0)
如果只想在组件中使用axios的原始方法,则必须首先从终端运行命令:
disable_path_info = Off
从那里,您应该能够在组件中导入axios,如下所示:
npm install --save axios
有关更多信息,请检查:https://www.npmjs.com/package/axios
答案 1 :(得分:0)
我设法在模块内使用axios。导出部分代码。
通常我会使用import axios from 'axios';
并将axios用作内部的方法
export default {
...
methods: {
// here (axios method)
...
但是
module.exports = { mounted() {
// game code
};
如果我使用export default
代码部分,则部分无效。我几乎可以肯定,有一种更优雅的方法可以解决整个问题,但是由于我是新手,但仍然不完全了解Vue和axios的工作原理,因此我只是尝试了一些将axios包括在其中的方法,并且可行: / p>
module.exports = { mounted() {
const axios = require("axios");
// game code
// and later, for example: axios.post(...)...
};
起初,我认为它不起作用,因为我的IDE无法识别axios方法,但是它实际上将数据发布到了我的数据库中,所以它确实起作用。