Saya mendaftarkan hartanah melalui kaedah CSS.registerProperty. Masalahnya ialah apabila saya memuatkan komponen yang sama, DOMException dilemparkan kerana harta sedemikian sudah wujud.
Saya sedang mencari cara untuk mengetahui sama ada terdapat kaedah pengambil untuk hartanah yang serupa.
Jalankan dalam komponen vue3.
onMounted( () => { try { window.CSS.registerProperty({ name: "--num", syntax: "<integer>", inherits: false, initialValue: 0, }); } catch (error) { if(error instanceof DOMException){ console.log(error) } } }
Ini ialah mesej ralat -> DOMException: Failed to execute 'registerProperty' on 'CSS': The name provided has already been registered.
Dari spesifikasi: https://drafts.css-houdini.org/css-properties-values-api/#registering-custom-properties
Setahu saya, beginilah cara Chrome melakukannya. Tiada mekanisme sengaja direka untuk mengakses
[[registeredPropertySet]]
,所以您已经在使用可能是最好的可行方法:try / catch
. Mana-mana nama sifat yang bercanggah dengan koleksi ini akan menimbulkan ralat sintaks.