我有一个使用vuex的应用程序。已设置Vuex,以便每个模块都有其自己的状态。
示例设置:
const store = new Vuex.Store({
state: {
app: window.application,
view: ''
},
modules: {
checkout,
account,
navigation
}
然后模块具有其自己的状态。 示例:
const checkout = {
namespaced: true, // IMPORTANT for modules
state: {
site: null,
deliveryType: 'homeDelivery',
deliveryOption: 'standardDelivery',
manualAddressActive: false,
}
}
我已经像这样启动了应用程序:
const app = new Vue({
el: '#baseMountTarget',
api,
i18n,
router,
store,
render: h => h(Base)
});
if(window.Cypress) {
window.app = app;
}
现在我的问题是如何访问赛普拉斯中的模块状态?通过执行以下操作,我只能访问基本状态,而不能访问模块状态,并且我无法确定如何访问模块状态
context('DeliveryOption', () => {
describe('Delivery option home delivery', () => {
it('Should have active class for home delivery', () => {
const getStore = () => cy.window().its('app.$store');
getStore().its('state.deliveryType').should('equal', 'homeDelivery');
});
})