Punya fungsi dari sini:
https://stackoverflow.com/questions/105034/create-guid-uuid-in-javascript
Dan TS mengatakan ada kesalahan, tidak yakin apakah itu benar.
Dan jika ini bukan kesalahan, tetapi ts menganggap ini sebagai kesalahan - apakah ada cara untuk @menekannya ?
Terima kasih.
TypeScript Version: 2.3.2 / tetapi sama di taman bermain: https://www.typescriptlang.org/play/index.html
Kode
function uuidv4()
{
return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, c =>
(c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16)
)
}
Perilaku yang diharapkan:
Tidak ada kesalahan?
Perilaku sebenarnya:
Operator '+' cannot be applied to types 'number[]' and '-1000'.
Ini bukan forum dukungan.
Pertanyaan harus diajukan di StackOverflow atau di Gitter.im .
Tapi ... TypeScript melindungi Anda dari paksaan implisit, jadi Anda perlu mentransmisikan literal array :
function uuidv4()
{
- return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, c =>
+ return ([1e7] as any + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, c =>
(c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16)
)
}
Komentar yang paling membantu
Ini bukan forum dukungan.
Pertanyaan harus diajukan di StackOverflow atau di Gitter.im .
Tapi ... TypeScript melindungi Anda dari paksaan implisit, jadi Anda perlu mentransmisikan literal array :