Преди това ми мина през ума, загубих половин ден в търсене на плъгин, който ПРОСТО да работи без никакви допълнителни трикове, за да продължа пътуването си, но не го направих, затова създадох този плъгин и го наричам „Приставка за NativeScript, която работи ”, шегувайки се, наричам го „nativescript-google-places-autocomplete”.

В текущото приложение, върху което работя с клиент, ние просто искаме да покажем автоматично довършване на въведено търсене, със списък с прогнози за места, така че опитах някои плъгини и някакъв ванилен Javascript код (не е добър за поддръжка на кода), но не, аз избера да създам свой собствен плъгин и да го споделя с общността.

За да започна, имам нужда от kickstart проект или файлови структури, никога не стартирам проект с обикновени файлове, отне време за изпълнение на съществената нужда, така че намерих начален проект (че допринесох за него

) в акаунта на Nativescript GitHub: https://github.com/NativeScript/nativescript-plugin-seed

След това създадох свой собствен API ключ и започнах да прилагам свои собствени неща.

Така че ще работим върху някои от тези файлове, всички файлове се генерират от семената, с изключение на този

google-places-autocomplete.static.ts

Този файл съдържа статична променлива, за да поддържа структурата и кода чисти.

Ok,

google-places-autocomplete.android.ts

google-places-autocomplete.common.ts

google-places-autocomplete.ios.ts

когато имаме обща функционалност между iOS и Android, поставяме: google-places-autocomplete.common.ts,в противен случай внедряваме всеки файл според нуждите на платформата.

google-places-autocomplete.android.ts

google-places-autocomplete.common.d.ts

google-places-autocomplete.ios.d.ts

Тези файлове се генерират автоматично с Typescript и съдържат типовете и дефинициите на TS файловете.

Така че цялата работа ще бъде върху файла google-places-autocomplete.common.ts, защото ще използваме модулите Nativescript, които поддържат и двете платформи, и ето нашия файл.

Първо, нека импортирамемодула, който ще използваме

Плъгинът прави две неща, търси места от заявка и показва подробности за място от идентификатор на място.

В тези две функции направихме две прости заявки (използвайки HTTP модул от nativescript) към API на google places

Ето крайния продукт и за да научите повече за модула или да проверите за демонстрация, отидете на тази връзка: https://github.com/labidiaymen/nativescript-google-places-autocomplete

Този пакет се хоства на npmjs.com

https://www.npmjs.com/package/nativescript-google-places-autocomplete

Надявам се да помогне, благодаря