這應該是指示某人創建全文搜索概念證明的一步指南。
# install npm packages
npm i
# start local dev server
npm run dev首先創建一個Firebase帳戶。
創建一個新項目。在此處單擊數據庫,您將能夠啟動Firestore數據庫。單擊此操作,然後選擇測試模式。
在將Cloud Firestore連接到您的應用程序之前,請確保使用Firebase的大火或火焰定價計劃來啟用出站請求。之後,您可以開始從.env.example文件創建.ENV文件。在示例文件中,您需要提供值,並且可以在Firebase設置中找到更多信息,以查看此Firebase設置頁面。在設置中,有一個您的應用程序部分顯示iOS,Android和Web圖標。單擊Web變體,您將看到需要復制為.env的值。
請確保創建包含帶有標題字段的電影文檔的Firestore電影集。如果您想查看我使用的其他字段,請查看搜索result.vue組件。
之後,安裝Firebase命令行工具,然後登錄到您的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 init命令行工具將向您顯示您的數據庫選擇您要使用的概念證明的數據庫。
現在,您運行NPM Run Dev,它應該連接到Firestore數據庫。
首先創建一個Algolia帳戶(您可以使用免費帳戶)。在網站的儀表板部分中,您可以創建一個新的索引名稱:movie_title。之後,您可以轉到儀表板的API鍵部分。在這裡,您可以找到Admin API密鑰和應用程序ID。將這些鍵添加到您的.env文件中。
以下是有關阿爾戈利亞,凡士館和雲功能的更多資源,從弗里斯特爾的角度來看。
在此存儲庫中,雲功能已經存在。但是,如果您想獲得更多信息或從頭開始啟動,則可以遵循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 functions截至此時,雲功能僅支持節點6。所以打字:
nvm install v6.11.5
nvm use v6.11.5在命令行CD中,函數文件夾不要忘記執行此操作非常重要。雲功能需要使用Algolia的API配置。通過鍵入以下內容來執行此操作:
# 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 "如果要使用連接的Algolia本地記錄雲功能,則需要在當前功能文件夾中運行此命令:
firebase functions:config:get > .runtimeconfig.json可以在這裡找到額外的信息
現在,我們可以使用firebase.config()。 app_id and firebase.config()。 api_key將這些值引用在函數文件夾中。之所以這樣做,是因為在我們部署這些功能後,它可以訪問這些API鍵。
確保您使用的索引名稱在雲功能中的index.ts文件中添加:
const index = client . initIndex ( '<your-algolia-index-name-here>' ) ;還應在search.vue文件中的前端中添加它:
< ais-index
:app-id =" appId "
:api-key =" apiKey "
index-name =" <you-algolia-index-name-here> " >您現在可以在提供索引文件中寫下您的功能
然後,當您編寫雲功能時,將其部署到Firebase進行測試。您可以通過打字來做到這一點:
# run functions
npm run serve功能文件夾的一些其他有用命令
# test function remotely
firebase deploy --only functions
# test function locally
firebase functions:log --only < FUNCTION_NAME >