เริ่มต้นใช้งานองค์ประกอบ Google Maps เชิงมุม
NS มุก-กล่อมเด็ก (v9.0.0-rc.0) แนะนำตัวที่สอง |_+_| คอมโพเนนต์ ซึ่งเป็นคอมโพเนนต์ของ Google Maps ในโพสต์นี้ เราจะมาดูการเริ่มต้นใช้งานองค์ประกอบ Google Maps
เมื่อต้นปีนี้ เราเปลี่ยนชื่อของ repo นี้เป็น angular/components เพื่อเน้นเป้าหมายของเราในการจัดหามากกว่าส่วนประกอบการออกแบบวัสดุ รีลีส 9.0.0 ประกอบด้วยหนึ่งในคุณสมบัติใหม่ถัดไปในเรื่องนั้น - แพ็คเกจใหม่ที่ห่อหุ้ม Google Maps JavaScript API ในองค์ประกอบเชิงมุมที่ใช้งานง่าย
ฉันหวังว่าจะได้ทีมขยายพื้นที่เก็บข้อมูลเพื่อสร้างส่วนประกอบ เราเห็นแล้ว |_+_| ส่วนประกอบ ใน v8.2.0 ซึ่งมีการสำรวจใน เครก 'NS บทความ .
การผสานรวมใหม่เหล่านี้กับ JavaScript API ที่มีอยู่ทำให้เราทำงานได้ง่ายขึ้น และฉันอยากรู้เกี่ยวกับส่วนประกอบใหม่อื่นๆ ที่จะออกในเวอร์ชันต่อๆ ไป!
react-map-gl markers
ติดตั้ง
เชิงมุม
สามารถติดตั้งโมดูล Google แผนที่ได้จาก |_+_|
@angular/component
เมื่อการติดตั้งเสร็จสิ้น เราต้องเพิ่ม Angular module |_+_| ถึง |_+_| ประกาศ
[YouTube Player](https://github.com/angular/components/tree/master/src/youtube-player)
|_+_| ส่งออกสามองค์ประกอบที่เราสามารถใช้ได้:
- |_+_|: นี่คือส่วนเสริมของ Google Maps ที่ให้บริการผ่าน |_+_| ตัวเลือก
- |_+_|: ใช้สำหรับใส่เครื่องหมายบนแผนที่ ใช้งานได้ทาง |_+_| ตัวเลือก
- |_+_|: หน้าต่างข้อมูลของเครื่องหมาย พร้อมใช้งานผ่าน |_+_| ตัวเลือก
กำลังโหลด Maps JavaScript API
นอกจากนี้เรายังต้องนำเข้า Maps API ซึ่งสามารถทำได้โดยการเพิ่มแท็กสคริปต์ใน |_+_| ไฟล์.
@angular/google-maps
ในการใช้แผนที่ในสภาพแวดล้อมที่ใช้งานจริง คุณจะต้องสร้างคีย์ API ใหม่ ทำตาม เอกสาร เพื่อสร้างคีย์ใหม่
การใช้งาน
แผนที่ของกูเกิล
การเพิ่มองค์ประกอบ Google Maps ลงในเทมเพลต ทำให้เราสามารถเห็นและใช้ Google Map ได้แล้ว แผนที่จะทำงานเป็นแผนที่เริ่มต้นโดยมีฟังก์ชันการทำงานเริ่มต้น เช่น คุณสามารถซูมเข้าและออก และลากเข้าไปในแผนที่ได้
npm install @angular/google-maps
ตั้งค่าตัวขยายสัญญาณ wifi netgear ac1200
คุณสมบัติอินพุต
เราสามารถปรับแต่งสไตล์ของแผนที่เริ่มต้นได้โดยใช้ |_+_| คุณสมบัติ. คุณสมบัติที่ใช้บ่อยที่สุดจะถูกเพิ่มเป็น |_+_| คุณสมบัติ เราสามารถกำหนดขนาดของแผนที่ ตั้งศูนย์กลาง และกำหนดระดับการซูม
GoogleMapsModule
เพื่อใช้งาน Google Maps API อย่างเต็มที่ เรายังสามารถใช้ |_+_| คุณสมบัติ. การใช้คุณสมบัติที่ชัดเจนจะชนะโดยใช้ |_+_| คุณสมบัติ. |_+_| คุณสมบัติเหมือนกันมีอินเทอร์เฟซเป็น |_+_|
import
คุณสมบัติเอาต์พุต
|_+_| องค์ประกอบเปิดเผยเหตุการณ์ Google Maps API ทั้งหมดเป็น |_+_| คุณสมบัติ:
import { BrowserModule } from '@angular/platform-browser' import { NgModule } from '@angular/core' import { GoogleMapsModule } from '@angular/google-maps' import { AppComponent } from './app.component' @NgModule({ declarations: [AppComponent], imports: [BrowserModule, GoogleMapsModule], providers: [], bootstrap: [AppComponent], }) export class AppModule {}
ครอบคลุมกิจกรรมทั้งหมดเหล่านี้เป็นจำนวนมากสำหรับหนึ่งโพสต์ ในโพสต์นี้เราจะพูดถึง |_+_| เหตุการณ์. หากคุณสนใจในกิจกรรมทั้งหมดที่ฉันแนะนำคุณไปที่ เอกสาร Google Maps API สำหรับรายการทั้งหมดและการใช้งานเชิงมุมใน รหัสแหล่งที่มา .
GoogleMapsModule
GoogleMap
วิธีการและผู้รับ
หากเราอ้างอิงถึงองค์ประกอบแผนที่โดยใช้ @ViewChild มัณฑนากร เรายังสามารถใช้เมธอดและ getters ต่อไปนี้ได้
google-map
ตัวอย่างเช่น เราสามารถบันทึกจุดศูนย์กลางปัจจุบันของแผนที่ได้
การตั้งค่าอีเมล sbcglobal iphone
MapMarker
MapMarker
คุณสมบัติอินพุต
เมื่อวางแผนที่แล้ว เราสามารถเริ่มเพิ่มเครื่องหมายได้ ทำได้โดยใช้ |_+_| ส่วนประกอบ. ในการเพิ่มเครื่องหมาย ตรวจสอบให้แน่ใจว่าได้เพิ่มเครื่องหมายใน |_+_| มิฉะนั้นจะไม่ปรากฏ
เช่นเดียวกับ |_+_| ตัวเลือกที่ใช้บ่อยที่สุดสามารถตั้งค่าได้โดยตรงด้วย |_+_| คุณสมบัติ แต่ยังสามารถใช้ชุดตัวเลือกแบบเต็มของ MapMarker .
map-marker
MapInfoWindow
ข้อกำหนดทั้งหมดของเครื่องหมาย:
map-info-window
คุณสมบัติเอาต์พุต
|_+_| องค์ประกอบยังเปิดเผยเหตุการณ์ Google Maps API เป็น |_+_| คุณสมบัติ:
index.html
การอ้างอิงแบบเต็มไปยัง API สามารถดูได้ที่ เอกสาร Google Maps API และการใช้งานเชิงมุมใน รหัสแหล่งที่มา .
คำนิยาม เสร็จจิระ
MapInfoWindow
องค์ประกอบสุดท้ายคือ |_+_| สามารถใช้เพื่อเปิดหน้าต่างป๊อปอัปของเครื่องหมายได้ เพื่อแสดงป๊อปอัปเราต้องเพิ่มส่วนประกอบภายใน |_+_| แม่แบบ
Map
ด้านบนไม่ทำอะไรเลย เพื่อให้ปรากฏ เราต้องเปิดหน้าต่างข้อมูลเมื่อเราคลิกที่เครื่องหมาย เราผูก |_+_| เมธอดไปยังตัวทำเครื่องหมายและส่งผ่านการอ้างอิงตัวทำเครื่องหมายไปยัง |_+_| วิธีการเปิดหน้าต่างข้อมูล
สุดท้ายนี้ เรายังต้องเพิ่มการอ้างอิงไปยัง|_+_| องค์ประกอบภายในองค์ประกอบของเรา เราสามารถทำได้โดยใช้ @ViewChild มัณฑนากร . โดยการอ้างถึงหน้าต่างข้อมูลและเครื่องหมาย เราสามารถเปิดหน้าต่างข้อมูลโดยใช้ |_+_| กระบวนการ.
@Input()
คุณสมบัติอินพุต
@Input
คุณสมบัติเอาต์พุต
| Property | Description | | --------- | ------------------------------------------------------------------------------------------------------------------------------------ | | `height` | Sets the initial height | | `width` | Sets the initial width | | `center` | Sets the initial center | | `zoom` | Sets the initial zoom | | `options` | Sets the options, for more info see the [docs](https://developers.google.com/maps/documentation/javascript/reference/map#MapOptions) |
วิธีการและผู้รับ
โดยใช้ |_+_| ที่มีการอ้างอิงถึง |_+_| องค์ประกอบที่เราสามารถใช้ประโยชน์จากวิธีการและ getters ดังต่อไปนี้:
แผ่นโกงการสัมภาษณ์การเรียนรู้ของเครื่อง
options
เนื้อหาแบบไดนามิก
การมีเนื้อหาคงที่ภายในหน้าต่างข้อมูลนั้นค่อนข้างน่าเบื่อ ในการจัดเตรียมเนื้อหาแบบไดนามิกภายในหน้าต่างข้อมูล เราสามารถสร้างคุณสมบัติสตริงภายในคอมโพเนนต์ได้ โดยมีลักษณะดังนี้
options
options
การอ้างอิงแบบเต็มไปยัง API สามารถดูได้ที่ เอกสาร Google Maps API และการใช้งานเชิงมุมใน รหัสแหล่งที่มา .
วางมันทั้งหมดเข้าด้วยกัน
Angular เวอร์ชันใหม่นำการเปลี่ยนแปลงเชิงบวกและความเป็นไปได้ใหม่ๆ มาสู่เรา เราตั้งตารอการเปิดตัว Ivy ใน Angular v9 แล้ว แต่ตอนนี้เราจะตั้งตารอ |_+_| รุ่นใหม่ด้วยเช่นกัน
นอกจาก |_+_| . ใหม่แล้ว จะมีการผสานรวมกับ Clipboard API ภายใน Angular CDK ตามที่สำรวจใน ใช้ Angular Clipboard CDK ใหม่เพื่อโต้ตอบกับคลิปบอร์ด .
องค์ประกอบเชิงมุมนั้นใหม่มาก นั่นเป็นสาเหตุที่เอกสารและโค้ดตัวอย่างมีน้อย เนื่องจากการใช้งาน Angular เป็นไปตามข้อกำหนดของ Google Maps API เราสามารถดูได้ที่ เอกสารเพียบ จาก JavaScript API
ดูรหัสด้านล่างสำหรับตัวอย่างการสำรวจทั้งหมดของโพสต์นี้
[Map Options interface](https://developers.google.com/maps/documentation/javascript/reference/map#MapOptions)
export class AppComponent implements OnInit { zoom = 12 center: google.maps.LatLngLiteral options: google.maps.MapOptions = { mapTypeId: 'hybrid', zoomControl: false, scrollwheel: false, disableDoubleClickZoom: true, maxZoom: 15, minZoom: 8, } ngOnInit() { navigator.geolocation.getCurrentPosition(position => { this.center = { lat: position.coords.latitude, lng: position.coords.longitude, } }) } zoomIn() { if (this.zoom this.options.minZoom) this.zoom-- } }
#เชิงมุม #google-map #web-development #javascript