nyx_server
Version:
Node内容发布
38 lines (28 loc) • 948 B
JavaScript
import React from 'react';
import { fromJS } from 'immutable';
import { Link } from 'react-router';
export default class Projects extends React.Component {
getProjects() {
return this.props.projects || fromJS([]);
}
setSelectClass(name) {
return name === this.props.currentProject ? 'nyx-nav-item nyx-nav-selected': 'nyx-nav-item';
}
render() {
return (
<div className='nyx-nav'>
<h2>Projects</h2>
{
this.props.isLoading ?
<div>loading</div> : this.props.error ?
<div>{this.props.error}</div> :
this.getProjects().map((project, index) => (
<div onClick = {() => this.props.onSelect(project.get('name'))} key = {index}
className = {this.setSelectClass(project.get('name'))}
><Link to={'/manage/server/project/' + project.get('name') + '/info'}>{project.get('name')}</Link></div>
))
}
</div>
);
}
}