Esta debería ser una guía paso a paso para dirigir a alguien que cree una prueba de concepto de búsqueda de texto completo.
# install npm packages
npm i
# start local dev server
npm run devComience creando una cuenta de Firebase.
Crea un nuevo proyecto. Haga clic en la base de datos aquí, podrá iniciar una base de datos Firestore. Haga clic en eso y luego seleccione el modo de prueba.
Antes de conectar Cloud Firestore a su aplicación, asegúrese de tener un plan de precios de incendio o llama con Firebase para habilitar solicitudes de salida. Después de esto, puede comenzar a crear un archivo .env desde el archivo .env.example. En el archivo de ejemplo, hay valores que debe proporcionar y se puede encontrar en su configuración de Firebase para obtener más información, consulte esta página de configuración de Firebase. En la configuración hay una sección de sus aplicaciones que muestra los iconos iOS, Android y web. Haga clic en la variante web y verá sus valores a los que necesita copiar .env.
Asegúrese de crear una colección de películas Firestore que contenga documentos de películas con un campo de título. Si desea ver otros campos que utilicé, consulte el componente de result.vue de búsqueda.
Luego instale las herramientas de línea de comandos de Firebase e inicie sesión en su cuenta de Firebase.
# install firebase tools
npm install -g firebase-tools
# login to your firebase account
firebase login
# connect to existing project you've created
firebase use --add
# or start from scratch
firebase initLas herramientas de línea de comandos le mostrarán sus bases de datos Seleccione la que desea usar para esta prueba de concepto.
Ahora cuando ejecuta el NPM Ejecutar dev debe estar conectado a su base de datos Firestore.
Comience creando una cuenta de Algolia (puede usar una cuenta gratuita). En la sección del tablero del sitio puede crear un nuevo nombre de índice: Movie_title. Luego puede ir a la sección API Keys del tablero. Aquí puede encontrar la clave API de administración y la ID de aplicación. Agregue estas claves a su archivo .env.
Aquí hay algunos recursos más sobre las funciones de Algolia, Firestore y Cloud y aquí desde la perspectiva de Firestore.
En este repositorio, las funciones en la nube ya están allí. Pero si desea tener más información o comenzar desde cero, puede seguir la guía de configuración de Google
# install latest versions
npm install firebase-functions@latest firebase-admin@latest --save
# initialize cloud funcitons (I chose typescript in the option it will give you)
firebase init functionsLas funciones en la nube solo admiten el nodo 6 a partir de este momento. Entonces escriba:
nvm install v6.11.5
nvm use v6.11.5En el CD de la línea de comando a la carpeta de funciones, no olvide hacer esto es muy importante. Las funciones de la nube deben configurarse con la API de Algolia. Haga esto escribiendo lo siguiente:
# install the dependencies in the functions folder
npm i
# provide the algolia APP ID and ADMIN API KEY we also added previously in the .env file
firebase functions:config:set algolia.app_id= " APP_ID " algolia.api_key= " API_KEY "Si desea registrar funciones en la nube localmente con Algolia conectada, deberá ejecutar este comando en la carpeta de funciones actuales:
firebase functions:config:get > .runtimeconfig.jsonSe puede encontrar información adicional aquí
Ahora podemos usar Firebase.config (). App_id y Firebase.config (). API_Key para hacer referencia a estos valores en la carpeta Funciones. Esto se hace porque después de implementar estas funciones puede acceder a estas claves API.
Asegúrese de que el nombre del índice que use se agrega aquí en el archivo index.ts en las funciones de la nube:
const index = client . initIndex ( '<your-algolia-index-name-here>' ) ;También se debe agregar en el frontend aquí en el archivo Search.Vue:
< ais-index
:app-id =" appId "
:api-key =" apiKey "
index-name =" <you-algolia-index-name-here> " >Ahora puede escribir sus funciones en el archivo proporcionar index.ts
Luego, cuando haya escrito una función en la nube, pruebe la implementando en Firebase. Puedes hacer esto escribiendo:
# run functions
npm run serveAlgunos comandos útiles adicionales para la carpeta de funciones
# test function remotely
firebase deploy --only functions
# test function locally
firebase functions:log --only < FUNCTION_NAME >