Web前端开发网

fly63.com

首页 资源 工具 文章 教程 栏目
  • 在线搜索
  • 文章标签
  • 广告合作
  • 赞助一下
  • 关于我们
资源推荐
AiPPT
全智能AI一键生成 PPT
腾讯云优惠券
云服务器,云数据库,CDN,域名注册等多种云计算服务
宝塔服务器面板
简单好用的服务器运维面板
美图设计室
AI智能一键生成海报,免费平面设计
必火AI
数字人一站式创作平台
购物快捷导航
一站式解决网购需求的智能平台
豆包AI
字节跳动旗下 AI 智能助手
免费资源下载中心
一站式解决工作学习需求的宝藏网站
蜂小推
不扣量的项目推广平台
Trae
字节跳动推出的 AI原生编程工具

资源分类

AI智能 酷站推荐 招聘/兼职 框架/库 模块/管理 移动端UI框架 Web-UI框架 Js插件 Jquery插件 CSS相关 IDE环境 在线工具 图形动效 游戏框架 node相关 调试/测试 在线学习 社区/论坛 博客/团队 前端素材 图标/图库 建站资源 设计/灵感 IT资讯
网站收录 / 问题反馈

normalizr

分享
复制链接
新浪微博
QQ 好友

扫一扫分享

网站地址:https://github.com/paularmstrong/normalizr
GitHub:https://github.com/paularmstrong/normalizr
网站描述:一款JSON数据范式化的js库
访问官网
GitHub

normalizr可以将嵌套的JSON格式扁平化,方便被Redux利用;   normalizr主要将获取的数据进一步格式化,在store创建一个虚拟数据库,数据通过id引用。


normalizr安装

yarn add normalizr
npm install normalizr


normalizr使用

没有normaliz 的情况:

{
  "id": "123",
  "author": {
    "id": "1",
    "name": "Paul"
  },
  "title": "My awesome blog post",
  "comments": [
    {
      "id": "324",
      "commenter": {
        "id": "2",
        "name": "Nicole"
      }
    }
  ]
}


引入normalizr代码:

import { normalize, schema } from 'normalizr';

// Define a users schema
const user = new schema.Entity('users');

// Define your comments schema
const comment = new schema.Entity('comments', {
  commenter: user
});

// Define your article
const article = new schema.Entity('articles', {
  author: user,
  comments: [comment]
});

const normalizedData = normalize(originalData, article);


结果如下:

{
  result: "123",
  entities: {
    "articles": {
      "123": {
        id: "123",
        author: "1",
        title: "My awesome blog post",
        comments: [ "324" ]
      }
    },
    "users": {
      "1": { "id": "1", "name": "Paul" },
      "2": { "id": "2", "name": "Nicole" }
    },
    "comments": {
      "324": { id: "324", "commenter": "2" }
    }
  }
}




仅供个人学习参考/导航指引使用,具体请以第三方网站说明为准,本站不提供任何专业建议。如果地址失效或描述有误,请联系站长反馈~感谢您的理解与支持!

链接: https://fly63.com/nav/906

更多»
热门资源
Vue
Vue.js是一套构建用户界面的渐进式JavaScript框架
官网
GitHub
react
Facebook开发的一款高效、灵活、声明式设计的JS库
官网
GitHub
AngularJS
Google推出有条理,可维护,易编程的MVVM框架
官网
GitHub
backbone
提供:模型、集合、视图,开发重量级的javascript应用的框架
官网
GitHub
jquery
一个快速、简洁的JavaScript代码库
官网
GitHub
zepto.js
一个轻量级的针对现代高级浏览器的JavaScript库
官网
GitHub
Ember
JavaScript MVC框架,它用来创建复杂的Web应用程序,消除了样板
官网
GitHub
nw.js
轻量级桌面应用开发的捷径
官网
GitHub
socket.io
一个WebSocket库,包括了客户端的js和服务器端的nodejs
官网
GitHub
nuxt.js
基于 Vue.js 的轻量级、服务端渲染 (SSR) 应用框架
官网
GitHub
Next.js
实现react的服务端渲染的框架
官网
GitHub
Electron
基于Chromium 和 Node.js, 使用 JavaScript, HTML 和 CSS 构建跨平台的桌面应用
官网
GitHub
类似于normalizr的资源
Flux
Facebook用户建立客户端Web应用的前端架构
官网
GitHub
worker-dom
实现运行在一个Web Worker中的 DOM API 和框架
点击进入
GitHub
jsoneditor
JSON 在线编辑器插件
官网
GitHub
ConvNetJS
一个基于 js 的深度学习库
点击进入
GitHub
moon
一个从Vue获得灵感的 UI 框架
官网
GitHub
Kuma UI
一个headless、实用程序优先、零运行时的组件库
官网
GitHub
Vike
一个模块化 Web 框架,定位为 Next.js 和 Nuxt 的替代品
官网
GitHub
i18next
一个页面层语言国际化js框架
官网
GitHub
目录

手机扫一扫预览

》
分享组件加载中...
首页 技术导航 在线工具 技术文章 教程资源 前端标签 AI工具集 前端库/框架 实用工具箱 广告合作 关于我们

Copyright © 2018 Web前端开发网 All Rights Reserved. 提供免费在线工具、编程学习资源(教程/框架/库),内容以学习参考为主,助您解决各类实际问题,快速提升专业能力。