`success` 方法已被弃用。改为使用 `then` 方法

The `success` method has been deprecated. Use the `then` method instead

嗨,我是 Vue 世界的新手,这是我收到的警告: 成功方法已被弃用。请改用 then 方法。

这是代码:

apiURL = 'api/movies';

new Vue({
   el: '#app',

   data: {
      'movies': ''
   },

   ready: function() {
      this.getMovies();
   },

   methods: {
      getMovies: function() {
         this.$http.get(apiURL, function(movies) {
            this.$set('movies', movies);
         });
      }
   }
});

这也是做这种事情的正确方法吗?

你可以这样做:

this.$http.get('/').then(function (response) {
    this.$set('movies', response.data);
}

总而言之,vue-resource 有一些错误和不完善之处。如果您使用最新版本,唯一的解释是开发人员使用了他自己不推荐使用的方法。即 success 而不是 then.

您的 GET 请求应该像这样使用 then 承诺:

this.$http.get(apiURL).then(function (movies) {
    this.$set('movies', movies);
});

正如vue-resourceread-me页面所示:https://github.com/vuejs/vue-resource#example

弃用警告来自这一行:https://github.com/vuejs/vue-resource/blob/ed85a38a1c88faf4e1ac1d7c15cca8376aa933c8/dist/vue-resource.js#L853

回答你的最后一个问题,你的方法本身并没有错。