javascript - Route 中是否有使用 Ember 存储的 Post 请求功能?

标签 javascript ajax ember.js

我想知道是否有像 this.store.findAll('report') 这样的 ember 商店功能,它实际上是一个 GET 请求,但对于我的 route 的 postObj 的 POST ,我该如何处理我返回的响应。目前我正在发送 ajax POST 请求。

最佳答案

你可以做到

store.findAll('report', { adapterOptions: { method: 'POST' } })

但是你必须覆盖 findAll在你的适配器中并自己发出ajax请求。您可以通过从快照数组获取 adapterOptions 来检查使用的方法。

import DS from 'ember-data';
import Ember from 'ember';

const { get } = Ember;

export default DS.JSONAPIAdapter.extend({
  findAll(store, type, sinceToken, snapshotRecordArray) {
    let method = get(snapshotRecordArray, 'adapterOptions.method');
    let url = this.buildURL(type.modelName, snapshotRecordArray, 'findAll');
    // ...
    // return promise
  }
});

请注意,不建议使用 put 或 post 来获取记录,这很可能会产生代码味道。

关于javascript - Route 中是否有使用 Ember 存储的 Post 请求功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35918767/

相关文章:

javascript - 添加 d3 svg.selectAll (".foo").style ("fill",...) 覆盖 .foo :hover css rule

jquery - 使用 JSONP 或 CORS 的跨域 JavaScript 调用

ember.js - Ember 中是否有简写或相对链接?

css - 如何在 Ember 中有条件地应用 CSS 类?

javascript - 将不同的事件监听器添加到循环中的一组元素

javascript - 使用 Node.js 上传图像时出错 - Express

javascript - 将索引保持在范围内并环绕

javascript - 用ajax将记录添加到mysql数据库后重新加载查询,无需重新加载页面

php - 从 Ajax POST 将数组保存到 MySQL 的正确方法

javascript - 从每个助手调用的组件中产生