ResourcePicker не будет отображаться - PullRequest
0 голосов
/ 13 мая 2019

Я не могу открыть ResourcePicker для моей жизни. Я вижу, что состояние меняется с ложного на истинное при нажатии кнопки, но средство выбора ресурса фактически не открывается.

<AppProvider apiKey={apiKey} shopOrigin={shopOrigin} >
        <Page>
          <TopBar pageTitle="Create Sale" primaryButton="Save" clickPrimaryButton={this.handleClick} />
          <Layout sectioned={true}>
            <Layout.AnnotatedSection title="Scheduled sale settings" description="Setup the discount and which products will be selected for the sale.">
              <Card sectioned>
                <FormLayout>
                  <TextField label="Sale name" onChange={() => { }} />
                </FormLayout>
              </Card>

              <Card sectioned>
                <FormLayout>
                  <DiscountValue />
                </FormLayout>
              </Card>

              <Card>
                <Card.Section>
                  <FormLayout>
                    <SaleCategory onSelect={this.handleSelect} />
                  </FormLayout>
                </Card.Section>
                {searchBar}
                <Card.Section>
                  <Picker />
                </Card.Section>

              </Card>
            </Layout.AnnotatedSection>
          </Layout>
        </Page>
      </AppProvider>

, а затем компонент выбора

<code>import React from 'react';
import { ResourcePicker, Button } from '@shopify/polaris';

class Picker extends React.Component {
  constructor(props) {
    super(props);

    this.state = {
      resourcePickerOpen: false,
    }
  }

  render() {
    return (
      <div>
        <pre>{JSON.stringify(this.state.resourcePickerOpen)}
{ console.log («Выбранные товары:», выбор); this.setState ({resourcePickerOpen: false}); }} onCancel = {() => this.setState ({resourcePickerOpen: false})} > ); } } выборщик по умолчанию для экспорта;

Я ожидаю, что сборщик откроется, но это не так. Что я делаю не так?

1 Ответ

0 голосов
/ 13 мая 2019

Попытайтесь поместить объявление своего состояния, как в следующем фрагменте кода

class Picker extends React.Component {
    state = {
       resourcePickerOpen: false,
    }  

    ...

}

, вы можете удалить свой конструктор

...