【问题标题】:Can't get Algolia search to work from my react-native app无法通过我的 react-native 应用程序进行 Algolia 搜索
【发布时间】:2021-12-14 23:05:00
【问题描述】:

我刚刚开始了一个新的 React Native 项目,并希望将 Algolia 实现为搜索组件。经过文档和数小时的挠头后,我无法让它工作。

有人可以帮我搞定这件事吗?

import React from 'react';
import { StyleSheet, Text, View } from 'react-native';
import algoliasearch from 'algoliasearch/reactnative';
import { InstantSearch } from 'react-instantsearch-native';

const searchClient = algoliasearch(
  'xxx',
  'xxxx'
);

const styles = StyleSheet.create({
  safe: {
    flex: 1,
    backgroundColor: '#252b33',
  },
  container: {
    flex: 1,
    backgroundColor: '#FFFFFF',
  },
});

class App extends React.Component {
  root = {
    Root: View,
    props: {
      style: {
        flex: 1,
      },
    },
  };

  render() {
    return (
      <SafeAreaView style={styles.safe}>
        <StatusBar barStyle="light-content" />
        <View style={styles.container}>
          <InstantSearch
            searchClient={searchClient}
            indexName="Test"
            root={this.root}
          >
            <SearchBox />
            <InfiniteHits />
          </InstantSearch>
        </View>
      </SafeAreaView>
    );
  }
}

export default App;

对于 React Native 开发人员来说,algolia 是正确的方式吗?

syntax error

【问题讨论】:

    标签: reactjs react-native search algolia


    【解决方案1】:

    我不认为algoliasearch/reactnative 是一回事。你想要import algoliasearch from 'algoliasearch/lite

    你是从create-instancesearch-appnpxscript开始的吗?它为你的 React Native 应用创建了很多样板。

    我还没有深入研究过 Algolia 的本地编码,但有几个可用的示例。似乎最大的区别是您不能使用 InstantSearch 库中提供的小部件,而是需要使用 connectors 绑定到像 FlastList 这样的本机组件。

    That page 将引导您完成启动和运行的整个过程。

    【讨论】:

    • 嗨!所以我实际上让我的 Algolia Search 应用程序使用 create-instancesearch-app 脚本工作:)
    猜你喜欢
    • 1970-01-01
    • 2018-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-16
    • 2021-11-01
    • 2019-11-26
    相关资源
    最近更新 更多