「=11=」―诶「=10=」

Kendo-Vue Datasource.beforeSend issue

我正在为我正在创建的应用程序使用 kendovue,问题是我必须在每个请求上发送不记名令牌。 但我无法将它传递给服务器,因为分配给 beforesend 事件的函数具有请求的上下文,而不是 vue 组件。

 dataSource: new kendo.data.DataSource({
      page: 1,
      pageSize: 20,
      serverPaging: true,
      transport: {
        read: {
          url: "/api/users/list",
          dataType: "json",
          beforeSend: function (req) {
            req.setRequestHeader('Authorization', 'bearer ' + this.$auth.token());
          }
        }
      },
      schema: {
        total: function (data) {
          return data.Data.Total;
        },
        data: function (data) {
          let d = data.Items;
          return d;
        }
      }
    }),

有人能指出我正确的方向吗?

问候。

您可以将其定义为方法 beforeSend: this.beforeSend 并将其添加到方法集合中,如下所示:

  methods:{
      beforeSend: function (req) {
        req.setRequestHeader('Authorization', 'bearer ' + this.$auth.token());
      }
    }

这是在我这边正常工作的示例代码:https://stackblitz.com/edit/waonac?file=index.js