Vue: Pengecualian waktu proses: kinerja tidak ditentukan - dengan v2.6.9

Dibuat pada 14 Mar 2019  ·  12Komentar  ·  Sumber: vuejs/vue

Versi: kapan

2.6.8

Tautan reproduksi

https://jsfiddle.net/chrisvfritz/50wL7mdz/

Langkah-langkah untuk mereproduksi

Itu membuang dari file vue / dist / vue.js versi terbaru yang saat ini saya coba untuk mengisolasinya, namun tampaknya terhubung dengan kode baru yang ditambahkan baru-baru ini. Akan menambahkan lebih banyak langkah SECEPATNYA jika Anda masih tidak mengamatinya.
1) direplikasi dengan repo ini - https://github.com/vuejs/vue-test-utils-mocha-webpack-example
2) mengkloningnya
3) npm i
4) uji npm - tidak ada kesalahan
4) npm update vue
5) npm test - ReferenceError: kinerja tidak ditentukan

Salam pembuka,
Plamen

Apa yang diharapkan?

tidak ada kesalahan yang diamati

Apa yang sebenarnya terjadi?

kesalahan diamati

bug has PR has workaround improvement

Komentar yang paling membantu

Tampaknya di lingkungan jsdom:

> window.performance
Performance {}
> performance
ReferenceError: performance is not defined

Jadi kita harus menggunakan window.performace alih-alih memanggil performance secara langsung untuk membuat kode berjalan dengan benar di jsdom.

Semua 12 komentar

Harap berikan repro saat melaporkan bug

Hai @posva ,
Masalah ini tidak direplikasi dengan editor online namun saya telah memberikan langkah-langkah dengan proyek dari github di bawah bagian Langkah-langkah untuk mereproduksi.
Salam pembuka,
Plamen

Hal yang Anda tautkan adalah contoh yang diarsipkan dan tidak berlaku lagi. Repro tidak harus berupa jsfiddle, dapat berupa file HTML (atau hanya isinya). Ini juga tidak boleh menyertakan dependensi lain seperti mocha atau vue-test-utils (ini bisa menjadi masalah pada paket itu). Bersulang.

Terima kasih telah membalas!
Hm - Saya akan mencoba pendekatan lain - 'kinerja' yang ada di baris ini tidak dideklarasikan di mana pun dalam file. Kami memiliki window.performance dan config.performance namun saya tidak melihat 'performa' global. Itu datang dengan rilis terbaru karena di sini tidak ada.

Setelah Anda menjalankan analisis statis pada file dan melempar.

Salam pembuka,
Plamen

Juga mendapatkan ini. Mendapat peringatan dari CI saya setelah Vue ditingkatkan ke 2.6.9 (saya menggunakan Renovate agar deps tetap up to date).

Tampaknya di lingkungan jsdom:

> window.performance
Performance {}
> performance
ReferenceError: performance is not defined

Jadi kita harus menggunakan window.performace alih-alih memanggil performance secara langsung untuk membuat kode berjalan dengan benar di jsdom.

Oke, saya pikir saya membuka menu sebelum Anda menambahkan perbaikan label dan mengklik di luar setelah Anda menambahkan label memiliki PR, jadi itu menghapusnya. Kasus tepi yang lucu

Perlu dicatat bahwa meskipun JSDOM memiliki performance dukungan melalui process.hrtime , saya rasa kami tidak dapat menjamin peretasan saat ini dengan performance akan selalu berfungsi seperti yang diharapkan di lingkungan JSDOM ( ini berbeda dari implementasi browser).

@posva 😂

Hingga ini dirilis, solusinya adalah dengan menambahkan baris berikut setelah pendaftaran JSDOM:

// eslint-disable-next-line no-undef
global.performance = window.performance;

Hingga ini dirilis, solusinya adalah dengan menambahkan baris berikut setelah pendaftaran JSDOM:

// eslint-disable-next-line no-undef
global.performance = window.performance;

Maaf karena bodoh, tetapi di mana saya menambahkan baris berikut karena pendaftaran JSDOM dihapuskan di Vue CLI 3 dan cli-plugin-unit-mocha (tidak ada setup.js)?

Terima kasih untuk bantuannya...

// eslint-disable-next-line no-undef 
global.performance = window.performance;

Pertanyaan yang sama. Di mana saya menambahkan baris berikut?

@theonlychase Saya meletakkannya di titik entri tes utama saya test/setup.js itu direktori yang sama yang berisi require('jsdom-global')

Direferensikan di bawah ini pada --require flag.

"test": "mocha-webpack --webpack-config webpack/webpack.config.test.js --require test/setup.js reporter mocha-bamboo-reporter"
Apakah halaman ini membantu?
0 / 5 - 0 peringkat