Angular-google-maps: الوحدة غير موجودة: "@ agm / core / services / google-maps-types"

تم إنشاؤها على ٢٠ سبتمبر ٢٠١٩  ·  54تعليقات  ·  مصدر: SebastianM/angular-google-maps

فجأة أواجه المشكلة التالية.

لم يتم العثور على الوحدة النمطية: خطأ: لا يمكن حل "@ agm / core / services / google-maps-types"

Package.json

"@ agm / core": "^ 1.0.0"،
"@ agm / js-marker-Clusterer": "^ 1.0.0"

التعليق الأكثر فائدة

jimmykane ، يجب أن تتأكد من أن package.json الخاص بك يحدد "@agm/core: "1.0.0-beta.7" وليس @agm/core: "^1.0.0-beta.7" لأن هذا يعني أن لديك إصدار 1.0.0 الذي لا يعرض نفس الواجهة.

نحن نعمل على إصلاح هذا ، ولكن هناك واردات أخرى نحتاج إلى معالجتها.

ال 54 كومينتر

نفس الشيء هنا

يمكنك حذف node_modules وإعادة تشغيل npm install

@ doom777 لقد فعلت عدة مرات. لا حظ.

عينة رمز مقتطف أدناه ،

import { ZoomControlOptions, ControlPosition, MapTypeControlOptions, FullscreenControlOptions } from '@agm/core/services/google-maps-types';
mapTypeControlOptions:MapTypeControlOptions = {
    position: ControlPosition.LEFT_BOTTOM
    }

  fullscreenControlOptions: FullscreenControlOptions = {
    position : ControlPosition.LEFT_CENTER
  };

حسنًا ، يواجه موقع stackblitz مشاكله الخاصة في الوقت الحالي. أنا لا أنجح في الإنجاب.

هذا ما أحاول:

ng new agm-test2
cd agm-test2
npm install @agm/core
code .

أضف AgmCoreModule.forRoot إلى AppModule

النموذج: <agm-map [mapTypeControl]="true" [mapTypeControlOptions]="mapTypeControlOptions" [latitude]="0" [longitude]="0"></agm-map>

عنصر:

import { Component } from '@angular/core';
import { MapTypeControlOptions, ControlPosition } from '@agm/core/services/google-maps-types';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styles: ['agm-map{height:300px}']
})
export class AppComponent {

  mapTypeControlOptions: MapTypeControlOptions = {
    position: ControlPosition.LEFT_BOTTOM
  };
}

نتيجة:
image

@ doom777 هذا مثال على أنه لا يعمل: https://stackblitz.com/edit/angular-krqwfi؟file=src٪2Fapp٪2Fapp.module.ts
كل ما فعلته هو إضافة @agm/core ومحاولة استيراد خدمة FitBoundsService

أنا فقط أحضر

خطأ غير معلوم (في الوعد): الإعداد المسبق لم يتم فصله في التكوين في
Object.config (webcontainer.5f16b010d2745c788a2.js: 15)
في t.config (webcontainer.5f16b010d2745c788a2.js: 15)
في Be (معاينة 4858aaa60d96ac0657bab.js: 1)
في المعاينة 4858aaa60d96ac06

57bab.js: 1

يبدو أن هذا خطأ في stackblitz

هل يمكنك تجربة شيء ما؟

  1. استنساخ هذه المكتبة
  2. انتقل إلى packages\core\map-types.ts
  3. أضف ControlPosition إلى قائمة الصادرات
  4. قم ببناء المكتبة بـ yarn build
  5. اربط المكتبة بـ npm link (دروس google إذا لم تستخدم رابط npm من قبل)
  6. معرفة ما إذا كان يبدأ العمل

يرجى تجربة العلاقات العامة الخاصة بي https://github.com/SebastianM/angular-google-maps/pull/1730 وإخبارنا إذا كان ذلك يعمل على حل المشكلة.

سيتعين عليك تغيير استيراد ControlPosition والآخرين إلى "@ agm / core"

@ doom777 لقد قمت باستنساخ وبناء واختبار # 1730. إنها تعمل كما هو متوقع.

@ doom777 يبدو أن هذا يرجع إلى كيفية حزم ng-packager للأشياء.

بدلاً من جعل الأشخاص يقومون بتحديث وارداتهم مرة واحدة لهذا ثم بالنسبة لـ # 1648 ، هل يجب أن نركز فقط على الحصول على # 1648 الذي سيتعامل مع أي عمليات استيراد لخرائط Google؟ (قد يكون التغيير الخاص بك لـ # 1730 مطلوبًا للتوجيهات / الخدمات التي لم يتم استيرادها عبر @ agm / core وبدلاً من ذلك يتم استيرادها من @agm/core/{directives,services}

فقط للتوضيح ، كان ng-packagr تغييرًا محتملاً فيما يتعلق بسطح واجهة برمجة التطبيقات حيث يكسر # 1648 نفس السطح (استيراد أنواع خرائط Google)

لقد أضفت # 1731 وهو تغيير ng-packagr لهذه الوحدة ، لكنه لا يعالج الواردات من @agm/core/* التي ليست @agm/core/services/google-maps-types (بما في ذلك @agm/core/services أو @agm/core/directives )

يظهر لي هذا الخطأ عندما أحاول استيراد {google} من @ agm / core / services / google-maps-types. لقد حاولت أيضًا حذف node_modules وإعادة تشغيل تثبيت npm عدة مرات. الرجاء مساعدتي لإيجاد حل.

pasqualepalmaccio إذا كان إنتاجًا ، فارجع إلى الإصدار 1.0.0-beta.7. خلاف ذلك ، انتظر حتى نحرر الإصلاح.

بعد التحديث لدي نفس المشكلة. هل هناك بعض الحل؟

jimmykane ، يجب أن تتأكد من أن package.json الخاص بك يحدد "@agm/core: "1.0.0-beta.7" وليس @agm/core: "^1.0.0-beta.7" لأن هذا يعني أن لديك إصدار 1.0.0 الذي لا يعرض نفس الواجهة.

نحن نعمل على إصلاح هذا ، ولكن هناك واردات أخرى نحتاج إلى معالجتها.

لدينا إصلاح ، فقط مشكلة مؤقتة بدمجه

ما زلت أرى هذه المشكلة ، هل تم دمج هذا الإصلاح؟

لا ، لا يمكنني العثور على مساهم آخر للموافقة على العلاقات العامة الخاصة بي :(

هل تم دمج هذا الإصلاح؟

ربما يسحب الإصدار 1.0.0 طالما كنت تعمل على الإصلاح؟

لديك نفس المشكلة عند محاولة الاستيراد:

استيراد {ZoomControlOptions، ControlPosition، ZoomControlStyle} من "@ agm / core / services / google-maps-types" ؛

فقط قم بالتسجيل ليصلك إشعار بالإصلاح. سوف تستخدم القيم السحرية المشفرة في الوقت الحالي

يمكنك استخدام 1.0.0-beta.7 في الوقت الحالي.
الإصدار 1.0.1 قريبًا ، أحاول الاتصال بسيباستيان هولشتاين ، لكن لم يحالفني الحظ

مرحبا SebastianM واكي واكي .... من فضلك هيا دعونا نتعثر هذا

1.0.0-beta.7 يخترق IVY لذا حاليًا نحن محظورون من استخدام هذه الحزمة.

BumpSebastianM يرجى الحفاظ على هذا الريبو هيا. دمج وتحرير.

بالنسبة لأعمال شخص واحد ، فإننا جميعًا نكافح هنا.

ربما يجب علينا فقط تفرعها؟ من الواضح أن شركته تنوي استخدام هذه الحزمة.

أو: https://drewdevault.com/2018/12/04/How-to-abandon-a-FLOSS-project.html
أو حتى: https://www.codeshelter.co/

ربما يستطيع سيباستيان فقط إضافة الامتيازات الصحيحة إلى المتعاونين هنا
و voila حل المشكلة.

في يوم السبت ، 2 نوفمبر 2019 ، الساعة 12:37 مساءً ، كتب Lukas Neumann ، [email protected] :

ربما يجب علينا فقط تفرعها؟ من الواضح أن شركته تنوي استخدام ملفات
هذه الحزمة.

أو: https://drewdevault.com/2018/12/04/How-to-abandon-a-FLOSS-project.html
أو حتى: https://www.codeshelter.co/

-
أنت تتلقى هذا لأنه تم ذكرك.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/SebastianM/angular-google-maps/issues/1729؟email_source=notifications&email_token=AAJVX45GD4L46U7JGGD7FMDQRVQ7FA5CNFSM4IYS2YRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEC4Z6DY#issuecomment-549035791 ،
أو إلغاء الاشتراك
https://github.com/notifications/unsubscribe-auth/AAJVX45ENBM22GNL6UEF26TQRVQ7FANCNFSM4IYS2YRA
.

تلقيت

Module not found: Error: Can't resolve '@agm/core/services' بالرغم من تثبيته !!

@ agm / الأساسية: 1.0.0-beta.3

هل يمكنك محاولة الترقية إلى الإصدار 1.0.0-beta.7؟

كيف أقوم بترقيته؟ -> تثبيت npm "agm / core 1.0.0-beta.7"؟

حسنًا ، npm install @agm/[email protected] أو npm update @agm/core

حل دون تحديث. حاولت

import { GoogleMapsAPIWrapper } from '@agm/core';

وهي تعمل بنجاح.

نعم. أيضًا ، ربما لا يجب عليك استخدام GOogleMapsAPIWrapper

لماذا يمكنك أن تشرح من فضلك؟ هههههههههههههه

لماذا يمكنك أن تشرح من فضلك؟ هههههههههههههه

أعتقد أن GoolgeMapsAPIWrapper مخصص للاستخدام داخليًا للمكتبة ، وليس بالنسبة لنا كمستهلكين لها. يجب أن تستخدم ارتباطات الإدخال والحدث للمكون الرئيسي. في الوحدة النمطية الخاصة بك ، تقوم باستيراد AgmCoreModule ، ومن أجل Root في قسم الواردات.

إذا كنت ترغب في الوصول المباشر إلى واجهة برمجة تطبيقات خرائط Google ، يمكنك الحصول على الخريطة من (mapReady) على المكون ، مثل:

<agm-map [streetViewControl]="false" [latitude]="lat" [longitude]="lng" [styles]="mapStyles" [zoom]="defaultZoom" [zoomControlOptions]="zoomControlOptions" (mapReady)="mapReady($event)" (zoomChange)="zoomChanged($event)"> </agm-map>

في كود المكون:

mapReady(map: google.maps.Map) { this.map = map; }

ويمكنك الكتابة لخريطتك عن طريق تثبيت @ types / googlemaps

تضمين التغريدة
GoogleMapsApiWrapper مخصص داخليًا للمكتبة أو للإضافات. إنه أمر حتمي ، وهو مخالف للأسلوب التصريحي لـ Angular. معظم الأشياء التي ستفعلها باستخدام GMAW يجب أن تكون قادرًا على القيام بها باستخدام المدخلات والمخرجات على خريطة agm وأطفالها.

ermcgrat يمكنك أيضًا الحصول على معظم الأنواع من "@ agm / core" ، على الأقل حتى يتم دمج # 1648

شكرا يا رفاق .. شكرا جزيلا 😍😍😍😍😍

مرحبا لماذا تم إغلاق هذه القضية؟
1.1.0 لا يصلحها

حسنًا ، يسمح لك الإصدار jimmykane @ 1.1.0 بما يلي:

import { ControlPosition } from '@agm/core'

أهلا بكم،

1.1.0 لا يصلح لي سواء. لا يزال لدي هذا:
Module '"../../../../node_modules/@agm/core/agm-core"' has no exported member 'MapTypeControlStyle'
على الرغم من أنه تم تصديره:
image

لقد حاولت بالفعل حذف node_modules و package-lock ، لكن لم أفعل شيئًا أفضل على الرغم من ...

ما زلت أتلقى هذا الخطأ أيضًا.
Module not found: Error: Can't resolve '@agm/core/services/google-maps-types'
أحاول الوصول على سبيل المثال google.maps.geometry.spherical.computeArea() . يمكنني تحقيق ذلك عن طريق تثبيت @types/googlemaps ثم import {} from 'googlemaps'; لكن هذا يبدو نوعًا من الاختراق بالإضافة إلى أن IntelliJ Idea تصنفه على أنه استيراد غير مستخدم. _Optimize import_ ثم يحذف هذا السطر ويفصل الكود.
هل يمكن إصلاح هذا من فضلك؟ 🙏🏻

حاول استيراد {GoogleMapsAPIWrapper} من "@ agm / core" ؛

بدلاً من استيراد {GoogleMapsAPIWrapper} من "@ agm / core / service" ؛

هذا لا يزال غير ثابت في 1.1.0. هل يمكن إعادة فتحه والعمل عليه من فضلك؟

أواجه هذا الخطأ. حاولت بإصدارات مختلفة وبقي الخطأ ...

بالنسبة لجميع أولئك الذين "لا يزالون" يواجهون هذا الخطأ ، لا تقوموا باستيراد كميات كبيرة ، بل قم بعمليات استيراد ضحلة.

مرحبا @ doom777 هل هذا معالج؟

نعم ، إذا كنت تستخدم الإصدار 3.0.0 الجديد ، فقم بإزالة الاستيراد تمامًا لأننا لم نعد نجمع أنواع Google الخاصة. إذا كنت تستخدم 1.1.0 ، فما عليك سوى استيراد الأنواع من @agm/core ، وليس في عمق lib

هل يمكنك مساعدتي قليلا هنا؟

أرى الآن أن AGM يمكنها الحصول على QueryList mapControls: QueryList<AgmMapControl>;

هل نفعلها الآن مثل ماذا؟

قبل ذلك كان:

 public mapTypeControlOptions: MapTypeControlOptions = {
    // mapTypeIds: [MapTypeId.HYBRID, MapTypeId.ROADMAP, MapTypeId.SATELLITE, MapTypeId.TERRAIN],
    mapTypeIds: ['hybrid', 'roadmap', 'satellite', 'terrain'],
    position: ControlPosition.LEFT_TOP,
    style: 0
  };

وعلى القوالب:

<agm-map *ngIf="activitiesMapData.length > 0"
             [mapTypeId]="user && user.settings ? user.settings.mapSettings.mapType : 'roadmap'"
             (mapTypeIdChange)="changeMapType($event)"
             [fullscreenControl]="true"
             [mapTypeControl]="true"
             [scaleControl]="true"
             [rotateControl]="true"
             [zoomControl]="true"
             [gestureHandling]="'cooperative'"
             [scrollwheel]="null"
             [mapTypeControlOptions]="mapTypeControlOptions"
             [zoomControlOptions]="zoomControlOptions"
             [rotateControlOptions]="rotateControlOptions"
             [tilt]="45"
             [controlSize]="32"
             [disableDefaultUI]="true"
             [styles]="getStyles(theme)"
             [streetViewControl]="false">

حسنًا ، تعال إلى الخلاف لمزيد من المناقشة ، ولكن بشكل أساسي

<agm-map *ngIf="activitiesMapData.length > 0"
             [mapTypeId]="user && user.settings ? user.settings.mapSettings.mapType : 'roadmap'"
             (mapTypeIdChange)="changeMapType($event)"
             [gestureHandling]="'cooperative'"
             [scrollwheel]="null"
             [mapTypeControlOptions]="mapTypeControlOptions"
             [zoomControlOptions]="zoomControlOptions"
             [rotateControlOptions]="rotateControlOptions"
             [tilt]="45"
             [controlSize]="32"
             [disableDefaultUI]="true"
             [styles]="getStyles(theme)"
             [streetViewControl]="false">
   <agm-fullscreen-control></agm-fullscreen-control>
   <agm-scale-control></agm-scale-control>
   <agm-map-type-control [style]="style" [mapTypeIds]="mapTypeIds" [position]="position"></agm-map-type-control>

@ doom777 روجر ذلك. رأيت أن هذا كان هناك وكنت أتساءل عن الانضمام أم لا: - د

اسمحوا لي أن أجرب نصيحتك. لم أكن أعرف أنها عناصر الآن. أفضل بكثير

نعم ، إذا كنت تستخدم الإصدار 3.0.0 الجديد ، فقم بإزالة الاستيراد تمامًا لأننا لم نعد نجمع أنواع Google الخاصة. إذا كنت تستخدم 1.1.0 ، فما عليك سوى استيراد الأنواع من @agm/core ، وليس في عمق lib

مرحبًا @ doom777 ما زلت أواجه بعض المشكلات بعد تحديث مشروعي:

ERROR in node_modules/@agm/js-marker-clusterer/services/google-clusterer-types.d.ts:1:60 - error TS2307: Cannot find module '@agm/core/services/google-maps-types' or its corresponding type declarations.

1 import { GoogleMap, LatLngBounds, Marker, MVCObject } from '@agm/core/services/google-maps-types';

أود أن أتناول نصيحتك بعدم إجراء عمليات استيراد كبيرة ، ولكن للأسف لا يزال هذا هو الحال في @ agm / js-marker-Clusterer. هل فاتني شيء؟

هذه هي الإصدارات المستخدمة:

"@agm/core": "3.0.0-beta.0",
"@agm/js-marker-clusterer": "^1.1.0",

شكرا مقدما!

لديك نسخة غير متطابقة. إذا كنت تستخدم الزاوية 10 ، فاستخدم @agm/[email protected] و @agm/[email protected] .
إذا كنت تستخدم Angular 9 والإصدارات الأقدم ، فاستخدم @agm/[email protected] و @agm/[email protected]

لديك نسخة غير متطابقة. إذا كنت تستخدم الزاوية 10 ، فاستخدم @agm/[email protected] و @agm/[email protected] .
إذا كنت تستخدم Angular 9 والإصدارات الأقدم ، فاستخدم @agm/[email protected] و @agm/[email protected]

نجح هذا. لكنني كنت بحاجة للتحديث من:

import { AgmJsMarkerClustererModule } from '@agm/js-marker-clusterer';

ل:

import { AgmMarkerClustererModule } from '@agm/markerclusterer'

في وحدتي. لسبب ما ، [streetViewControl] و [zoomControl] لم يعملوا. بعد إزالتها ، عملت بشكل طبيعي. سأقوم بالتحقق من صحة المستندات إذا تغير شيء ما لهذه الخصائص.

بالإضافة إلى ذلك ، المتعلقة بـ @agm/markerclusterer أعتقد أنه قد يتم تحديث الوثائق في أسرع وقت ممكن.

صيح. تمت إزالة خيارات التحكم لصالح عناصر التحكم الفرعية

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

Subhojit1992 picture Subhojit1992  ·  3تعليقات

nthonymiller picture nthonymiller  ·  4تعليقات

DeveloperAdd007 picture DeveloperAdd007  ·  3تعليقات

marcelinobadin picture marcelinobadin  ·  3تعليقات

shedar picture shedar  ·  4تعليقات