nyx_server
Version:
Node内容发布
33 lines (28 loc) • 1.01 kB
JavaScript
import { connect } from 'react-redux';
import Templates from '../components/Templates';
import {setTemplateDataId} from '../actions/Project';
function saveToLocal(storageName, id, basePath) {
if (window.localStorage) {
var data = JSON.parse(window.localStorage.getItem(storageName) || '{}');
data[basePath] = id;
window.localStorage.setItem(storageName, JSON.stringify(data));
}
}
function select(state) {
var name = state.project.get('currentProject');
return {
templates: state.project.getIn(['cache', name, 'data', 'templates']),
isLoading: state.project.getIn(['cache', name, 'isLoading']),
error: state.project.getIn(['cache', name, 'error']),
dataIds: state.project.get('templatesDataIds')
};
}
function actionSelect(dispatch) {
return {
onChangeId: (id, basePath) => {
saveToLocal('nyxTemplatesDataIds', id, basePath);
return dispatch(setTemplateDataId(id, basePath));
}
};
}
export default connect(select, actionSelect)(Templates);