import {Component} from "react"
import React from "react"
import {userAddressbyprops} from "../../../../utils/gql"
import {ActivityIndicator, NavBar} from 'antd-mobile'
import {Icon, Row, Col} from 'antd'
import {Query} from "react-apollo"
import gql from "graphql-tag"
import './index.css'
import SingleAddress from "./singleaddress"
class Address extends Component {
constructor(props) {
super(props)
this.state = {
single: false,
addressID: '',
addressChoosed: {}
}
}
changePage = (bool) => {
this.setState({
single: bool
})
}
changeAddress = (address) => {
this.setState({
addressID: address.id,
addressChoosed: address
})
}
getDefaultAddress = (data) => (
data.find(data => data.default === 1)
)
getOtherAddress = (data) => {
let defaultAddressIndex = data.find(data => data.default === 1)
let dataCopy = [...data]
dataCopy.splice(defaultAddressIndex, 1)
return dataCopy
}
render() {
let {addressChoosed, addressID} = this.state
return (
}
onLeftClick={() => {
this.props.history.go(-2)
}}
>地址管理
{
({loading, error, data}) => {
if (loading) {
return (
)
}
if (error) {
return 'error!'
}
data = data.userAddressbyprops
return (
{
this.state.single ?
:
}
)
}
}
)
}
}
export default Address
class AddressRender extends Component {
constructor(props) {
super(props)
this.state = {}
}
changeOrdersAddress =(address) => {
console.log('address',address)
sessionStorage.setItem('ordersAddress',JSON.stringify(address))
this.props.history.go(-2)
}
render() {
let {changePage, changeAddress, defaultAddress, otherAddress} = this.props
return (
{
changePage(true)
changeAddress({id: 'add'})
}}>
添加新地址
this.changeOrdersAddress(defaultAddress)}>
{defaultAddress.username}
{defaultAddress.telephone}
默认
{defaultAddress.province + defaultAddress.city + defaultAddress.area + defaultAddress.address}
{
changePage(true)
changeAddress(defaultAddress)
}}
/>
{otherAddress.map(address => {
return (
this.changeOrdersAddress(address)}>
{address.username}
{address.telephone}
{address.province + address.city + address.area + address.address}
{
changePage(true)
changeAddress(address)
}}
/>
)
})}
)
}
}