Angular.js: Bug: TypeError: Es wurde versucht, eine schreibgeschützte Eigenschaft zuzuweisen.

Erstellt am 10. Okt. 2017  ·  3Kommentare  ·  Quelle: angular/angular.js

Ich schicke ein ...

  • [x] Fehlerbericht
  • [ ] Featureanfrage
  • [ ] Sonstiges (Hier bitte keine Supportanfragen stellen (siehe oben))

Aktuelles Verhalten:

PhantomJS 2.1.1 (Linux 0.0.0) ERROR
  TypeError: Attempted to assign to readonly property.
  at node_modules/angular-mocks/angular-mocks.js:18

Erwartetes / neues Verhalten:

Ich verwende derzeit Ubuntu 16.04 mit virtualenv, dieser Fehler führt dazu, dass mein Frontend-Server nicht ausgeführt werden kann. Was die Arbeit am Backend erschwert.

Minimale Reproduktion des Problems mit Anleitung:

Laufen.
gulp dev:runserver

Ganzer Fehler

[18:25:34] Using gulpfile ~/OpenSource/evalai/gulpfile.js
[18:25:34] Starting 'dev:runserver'...
[18:25:34] Starting 'dev'...
[18:25:34] Starting 'clean'...
[18:25:34] Finished 'clean' after 50 ms
[18:25:34] Starting 'css'...
[18:25:34] Starting 'js'...
[18:25:34] Finished 'js' after 26 ms
[18:25:34] Starting 'html'...
[18:25:34] Finished 'html' after 1.96 ms
[18:25:34] Starting 'images'...
[18:25:34] Starting 'vendorjs'...
Required path doesn't exist: /home/isht3/OpenSource/evalai/bower_components/angular-material-datetimepicker/dist/angular-material-datetimepicker.min.js angular-material-datetimepicker
[18:25:34] Finished 'vendorjs' after 895 μs
[18:25:34] Starting 'vendorcss'...
Required path doesn't exist: /home/isht3/OpenSource/evalai/bower_components/angular-material-datetimepicker/css/material-datetimepicker.css angular-material-datetimepicker
[18:25:34] Finished 'vendorcss' after 430 μs
[18:25:34] Starting 'fonts'...
[18:25:34] Starting 'configDev'...
[18:25:34] Finished 'configDev' after 4.82 ms
[18:25:34] Finished 'fonts' after 222 ms
[18:25:34] Finished 'images' after 232 ms
[18:25:34] Finished 'css' after 576 ms
[18:25:34] Starting 'inject'...
[18:25:34] Finished 'inject' after 4.73 ms
[18:25:34] Finished 'dev' after 634 ms
[18:25:34] Starting 'lint'...
[18:25:35] gulp-inject 9 files into base.html.
[18:25:36] Finished 'lint' after 1.56 s
[18:25:36] Starting 'connect'...
[18:25:36] Finished 'connect' after 17 ms
[18:25:36] Starting 'watch'...
[18:25:36] Finished 'watch' after 135 ms
[18:25:36] Starting 'test:watch'...
[18:25:36] Server started http://localhost:8888
10 10 2017 18:25:36.655:WARN [watcher]: Pattern "/home/isht3/OpenSource/evalai/frontend/dist/vendors/*.js" does not match any file.
10 10 2017 18:25:36.696:WARN [karma]: No captured browser, open http://localhost:9876/
10 10 2017 18:25:36.705:INFO [karma]: Karma v1.7.1 server started at http://0.0.0.0:9876/
10 10 2017 18:25:36.705:INFO [launcher]: Launching browser PhantomJS with unlimited concurrency
10 10 2017 18:25:36.730:INFO [launcher]: Starting browser PhantomJS
10 10 2017 18:25:37.024:INFO [PhantomJS 2.1.1 (Linux 0.0.0)]: Connected on socket JifOUk5oAkoB3DrkAAAA with id 22967302

START:
PhantomJS 2.1.1 (Linux 0.0.0) ERROR
  TypeError: Attempted to assign to readonly property.
  at node_modules/angular-mocks/angular-mocks.js:18

Finished in 0.143 secs / 0 secs @ 18:25:37 GMT+0530 (IST)

SUMMARY:
✔ 0 tests completed

Ich habe viel gesucht, ich habe nichts gefunden, wie ich es lösen könnte. Ich bin neu bei eckig.

ngMock more info

Alle 3 Kommentare

Welche Version von AngularJS verwendest du? Was steht in node_modules/angular-mocks/angular-mocks.js Zeile 18 (das im Stack-Trace erwähnt wird)?

Dies ist eine große Vermutung, da Sie nicht genügend Informationen bereitgestellt haben, um sicher zu sein, aber ich glaube, die Zeile, in der Sie den Fehler erhalten, ist

angular.mock = {};

was impliziert, dass angular.mock eine schreibgeschützte Eigenschaft ist oder dass angular möglicherweise nicht existiert. Im letzteren Fall vermute ich, dass die Fehlermeldung ein Ablenkungsmanöver ist?

Wenn dies der Fall ist, haben Sie die angular.js -Datei möglicherweise nicht geladen, bevor Sie die angular-mocks.js -Datei geladen haben?

@gkalpak @petebacondarwin Ich weiß nicht, was genau schiefgelaufen ist, ich habe nicht genug Debugging-Erfahrung mit Angular, aber es wurde gelöst, als ich bower install angular-material-datetimepicker ausführte. Ich habe in der Vergangenheit einige Probleme zu diesem Thema gesehen. Ich hoffe, das hilft jedem, der auf diesen Fehler stößt.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen