简介
@ember-data/rfc395-data 是一个 Ember.js 数据库组件,用于实现与 REST API 服务器之间的数据交互。它可用于完成各种前端任务,比如反馈数据、进行路由转换、过滤、分页、排序、查询等等。
此组件旨在实现 JSON API 规范(RFC 395),以确保与其他遵循相同规范的 REST API 整合后的数据交互的流畅性。
安装
npm install --save @ember-data/rfc395-data
引用
-- -------------------- ---- ------- -- ------ ------ ----------- ---- --------------------- ------ - ---------- - ---- --------------------------------- ------ ------ ---- ---------------------------- ----- --- - -------------------- ------------- -------------------- ---------------- ----------------------- --------- ------- - -------------------------- ----------------- -- --- --------------------- --------------------- ------ ------- ----
使用指南
在 .hbs 文件中,你可以使用以下代码轻松地与 REST API 服务器交互:
{{#each model as |user|}} <li>{{user.name}}</li> {{/each}}
在相关的 .js 文件中,使用下面的代码即可查询用户列表:
import Route from '@ember/routing/route'; export default Route.extend({ model() { return this.get('store').findAll('user'); }, });
以上代码中,我们使用findOne()方法获取对应资源的单个对象。
你可以使用 findAll() 方法返回全部的对象集合。当你想对数据展开操作时,就需要查询出全部的数据集。
你也可以使用 createRecord() 和 deleteRecord() 等方法对数据进行操作:
let user = this.get('store').createRecord('user', { name: 'Emily', age: 24, email: 'emily@example.com', }); user.save().then(() => { console.log('New user saved sucessfully!'); });
示例代码
// app/models/user.js import Model, { attr } from '@ember-data/model'; export default Model.extend({ name: attr('string'), age: attr('number'), email: attr('string'), });
// app/routes/users.js import Route from '@ember/routing/route'; export default Route.extend({ model() { return this.get('store').findAll('user'); }, });
{{!-- app/templates/users.hbs --}} <ul> {{#each model as |user|}} <li>{{user.name}}</li> {{/each}} </ul>
以上代码将以 REST API 规范读取用户数据,并将其数据展示在网页上。
总结
@ember-data/rfc395-data 是一个可靠的、适用于 Ember.js 的前端数据交互组件,能够让你使用 JSON API 规范更为容易地与服务器进行数据交互。我们希望,以上内容能够为你提供帮助和指导。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5eedc696b5cbfe1ea0612251