Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript v-on处理程序中的错误(承诺/异步):";TypeError:axios“uuuu网页包”uu IMPORTED“uu模块”uu 14“uuuuuu default.a.todo不是函数”;_Javascript_Vue.js - Fatal编程技术网

Javascript v-on处理程序中的错误(承诺/异步):";TypeError:axios“uuuu网页包”uu IMPORTED“uu模块”uu 14“uuuuuu default.a.todo不是函数”;

Javascript v-on处理程序中的错误(承诺/异步):";TypeError:axios“uuuu网页包”uu IMPORTED“uu模块”uu 14“uuuuuu default.a.todo不是函数”;,javascript,vue.js,Javascript,Vue.js,我正在创建一个简单的待办事项列表。在方法部分中创建createTodo()之前,我能够成功地将数据(文本)发布到PostMan。这是应用程序的服务器部分。现在转到客户机部分。现在,我无法发布到mongo数据库。在此方面的任何帮助都将不胜感激。非常感谢。 代码如下: FULLSTACKVUEEXPRESS client node_modules public src assets components TodoComponent.

我正在创建一个简单的待办事项列表。在方法部分中创建createTodo()之前,我能够成功地将数据(文本)发布到PostMan。这是应用程序的服务器部分。现在转到客户机部分。现在,我无法发布到mongo数据库。在此方面的任何帮助都将不胜感激。非常感谢。 代码如下:

FULLSTACKVUEEXPRESS
  client
    node_modules
    public
    src
      assets
      components
        TodoComponent.vue
      App.vue
      main.js
      .gitignore
      babel.config.js
      package.lock.json
      package.json
      TodoService.js
  node_modules
  server
  .gitignore
  package-lock.json
  package.json
App.vue

<template>
  <div id="app">
    <h1>Get It Done!</h1>
    <TodoComponent />
  </div>
</template>

<script>
import TodoComponent from "./components/TodoComponent.vue";

export default {
  name: "app",
  components: {
    TodoComponent
  }
};
</script>

<style>
#app {
  font-family: "Avenir", Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}
</style>
如果您需要查看某个文件,请告诉我,以便我可以编辑此查询。Main.js与我从vue create命令启动时完全相同。再次感谢您在这方面的帮助

注意:控制台中的完整错误如下:

vue.runtime.esm.js?2b0e:619 [Vue warn]: Error in v-on handler (Promise/async): "TypeError: axios__WEBPACK_IMPORTED_MODULE_14___default.a.todo is not a function"

found in

---> <TodoComponent> at src/components/TodoComponent.vue
       <App> at src/App.vue
         <Root>
warn @ vue.runtime.esm.js?2b0e:619
logError @ vue.runtime.esm.js?2b0e:1884
globalHandleError @ vue.runtime.esm.js?2b0e:1879
handleError @ vue.runtime.esm.js?2b0e:1839
eval @ vue.runtime.esm.js?2b0e:1856
Promise.catch (async)
invokeWithErrorHandling @ vue.runtime.esm.js?2b0e:1856
invoker @ vue.runtime.esm.js?2b0e:2179
original._wrapper @ vue.runtime.esm.js?2b0e:6917
vue.runtime.esm.js?2b0e:1888 TypeError: axios__WEBPACK_IMPORTED_MODULE_14___default.a.todo is not a function
    at Function.insertTodo (TodoService.js?fff3:26)
    at VueComponent._callee2$ (VM6913 TodoComponent.vue:90)
vue.runtime.esm.js?2b0e:619[vue warn]:v-on处理程序中的错误(承诺/异步):“TypeError:axios_uu网页包_u导入的_u模块_u14_uu默认.a.todo不是函数”
发现于
--->位于src/components/TodoComponent.vue
在src/App.vue
warn@vue.runtime.esm.js?2b0e:619
logError@vue.runtime.esm.js?2b0e:1884
globalHandleError@vue.runtime.esm.js?2b0e:1879
handleError@vue.runtime.esm.js?2b0e:1839
eval@vue.runtime.esm.js?2b0e:1856
Promise.catch(异步)
invokeWithErrorHandling@vue.runtime.esm.js?2b0e:1856
invoker@vue.runtime.esm.js?2b0e:2179
原始._wrapper@vue.runtime.esm.js?2b0e:6917
vue.runtime.esm.js?2b0e:1888 TypeError:axios_uuuWebpack_uImported_uModule_u14_uuuuuuDefault.a.todo不是函数
在Function.insertTodo(TodoService.js?fff3:26)
在VueComponent.\u调用2$(VM6913 TodoComponent.vue:90)

问题在于这一行:

返回axios.todo(url、{

axios
对象没有
todo
方法。我猜应该是
axios.post
axios.put

我相信你为
TodoService.js
包含了错误的代码。我相信你是对的。剪切和粘贴的危险性。感谢你提醒我注意。我将编辑现在就开始编码。这就是问题所在。谢谢你。我把ti改成了axios.post(url…等等),效果很好。谢谢你花时间在这上面。
   import axios from 'axios';


const url = 'http://localhost:5000/api/todos/';

class TodoService {
    // Get todos
    static getTodos() {
        return new Promise(async (resolve, reject) => {
            try {
                const res = await axios.get(url);
                const data = res.data;
                resolve(
                    data.map(todo => ({
                        ...todo,
                        createdAt: new Date(todo.createdAt)
                    }))
                );
            } catch (err) {
                reject(err);
            }
        });
    }
    // Create Todos
    static insertTodo(text) {
        return axios.todo(url, {
            text
        });
    }

    // Delete Todos
    static deleteTodo(id) {
        return axios.delete(`${url}${id}`);
    }
}

export default TodoService;
vue.runtime.esm.js?2b0e:619 [Vue warn]: Error in v-on handler (Promise/async): "TypeError: axios__WEBPACK_IMPORTED_MODULE_14___default.a.todo is not a function"

found in

---> <TodoComponent> at src/components/TodoComponent.vue
       <App> at src/App.vue
         <Root>
warn @ vue.runtime.esm.js?2b0e:619
logError @ vue.runtime.esm.js?2b0e:1884
globalHandleError @ vue.runtime.esm.js?2b0e:1879
handleError @ vue.runtime.esm.js?2b0e:1839
eval @ vue.runtime.esm.js?2b0e:1856
Promise.catch (async)
invokeWithErrorHandling @ vue.runtime.esm.js?2b0e:1856
invoker @ vue.runtime.esm.js?2b0e:2179
original._wrapper @ vue.runtime.esm.js?2b0e:6917
vue.runtime.esm.js?2b0e:1888 TypeError: axios__WEBPACK_IMPORTED_MODULE_14___default.a.todo is not a function
    at Function.insertTodo (TodoService.js?fff3:26)
    at VueComponent._callee2$ (VM6913 TodoComponent.vue:90)