2017-01-18 13 views
12

tôi nhận được lỗi sau:PhantomJs: Không thể tìm thấy biến đồ

INFO [karma]: Karma v0.13.9 server started at http://localhost:9018/ 

INFO [launcher]: Starting browser PhantomJS 

PhantomJS 1.9.8 (Mac OS X 0.0.0) ERROR 
     ReferenceError: Can't find variable: Map 
     at /Users/runtimeZero/code/vendor/inert/inert.min.js:589 

Tôi hiểu rằng tôi bao gồm một tập tin gọi inert.js được sử dụng ES6 Map(). Điều này là freaking ra PhantomJs.

Vì vậy, tôi đã bao gồm polyfill lõi-js/es6/map.js trong cấu hình nghiệp của tôi trong tệp. Tuy nhiên, điều đó không giải quyết được vấn đề.

Bất kỳ mẹo nào?

Trả lời

10

Tôi nghĩ PhatomJS không hỗ trợ ES6 Bản đồ, vì vậy bạn cần phải thử với một polyfill, Tôi đang sử dụng babel polyfill npm install babel-polyfill --save-dev

files: [ 
    { pattern: 'node_modules/babel-polyfill/browser.js', instrument: false}, 
], 
+0

này nên là mục đầu tiên trong mảng – Gazben

7

bạn cần phải cài đặt es6-shim và thêm nó vào phần tệp của bạn trong tệp cấu hình nghiệp.

npm install es6-shim --save 

trong karma.config.js bạn thêm nó vào danh sách các file

files: [ 
    'node_modules/es6-shim/es6-shim.js' 
] 
+4

này mang lỗi khác đối với tôi: 'ReferenceError: Không thể tìm biến: WeakMap' – Guillaume

Các vấn đề liên quan