¿Cómo puedo optimizar el código montando el componente de Vue en el gancho beforeEach utilizando Typescript?
Aquí está mi código. Quiero optimizar este caso.
describe("ID almacenada", () => {
it("ID vacío", () => {
// cuando
const wrapper = mount(SigninPage, options);
const vm = wrapper.vm;
});
it("ID existe", () => {
// cuando
localStorage.setItem(process.env.VUE_APP_SIGNIN_STORED_USER_ID, STORED_ID);
const wrapper = mount(SigninPage, options);
const vm = wrapper.vm;
});
});
¿Cómo puedo utilizar el gancho beforeEach de la siguiente manera usando TypeScript?
Quiero utilizar el gancho beforeEach. Pero no puedo ejecutar la prueba debido a tsc. Creo que será posible cuando los tipos de variables sean correctos.
describe("ID almacenada", () => {
// problema
let wrapper: VueWrapper<¿?>;
let vm: ¿?;
beforeEach(() => {
wrapper = mount(SigninPage);
vm = wrapper.vm;
});
it("ID vacío", () => {
// const wrapper = mount(SigninPage, options);
// const vm = wrapper.vm;
});
it("ID existe", () => {
// ¿Debo guardarlo antes de que se monte el wrapper?
localStorage.setItem(process.env.VUE_APP_SIGNIN_STORED_USER_ID, STORED_ID);
// const wrapper = mount(SigninPage, options);
// const vm = wrapper.vm;
});
});
davy.ai
Para usar el hook beforeEach en Typescript, es necesario especificar los tipos correctos para las variables wrapper y vm.
Aquí hay un ejemplo:
En este ejemplo, importamos
VueWrapper
ymount
de@vue/test-utils
y especificamos el tipo correctoSigninPage
para las variableswrapper
yvm
. Ahora, se puede acceder avm
ywrapper
enbeforeEach
y en los casos de prueba.