Redux Normalizr: простой пример не работает с последней версией
Вот пример из официальной документации github библиотеки normalizr. Я использую последнюю версию 3.2.4
,
schema.js
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 ]
});
let originalData = {
"id": "123",
"author": {
"id": "1",
"name": "Paul"
},
"title": "My awesome blog post",
"comments": [
{
"id": "324",
"commenter": {
"id": "2",
"name": "Nicole"
}
}
]
}
const normalizedData = normalize(originalData, article);
console.log('NORMALIZED DATA: ', normalizedData)
и это приводит к следующему,
Проблема в том, что comment
а также author
сущности не были созданы. Они все еще вложены в article
,
Вот мой package.json
файл,
{
"dependencies": {
"@rails/webpacker": "^3.0.1",
"babel-preset-react": "^6.24.1",
"form-serialize": "^0.7.2",
"isomorphic-fetch": "^2.2.1",
"jquery": "^3.2.1",
"normalizr": "3.2.4",
"prop-types": "^15.5.10",
"react": "^15.6.1",
"react-bootstrap": "^0.31.3",
"react-dom": "^15.6.1",
"react-redux": "^5.0.6",
"react-select-plus": "^1.0.0-rc.5",
"react-tooltip": "^3.3.1",
"redux": "3.5.2",
"redux-thunk": "^2.2.0",
"textile-js": "^2.0.4"
},
"devDependencies": {
"redux-logger": "^3.0.6",
"webpack-dev-server": "^2.7.1"
}
}
Я провожу много времени, чтобы разобраться в проблеме без удачи. Кажется, нормализация нормально работает со старой версией библиотеки (Atleast, я проверил с 2.3.0
).
Может кто-нибудь помочь мне с этой проблемой? Что-то не так с настройкой? или мне нужно установить какие-либо зависимости?