반응형
VUEX가 변환을 찾지 못했지만 정의되어 있습니다.
저는 VUEX에서 일하고 있는데, 새로운 돌연변이 "Shipping"을 등록하기 전까지는 모든 것이 괜찮았습니다.커밋할 때마다 "알 수 없는 돌연변이 유형: shipping"이 나타나기 때문입니다.하지만 이전 돌연변이는 정상적으로 작동하기 때문에 이유를 알 수 없습니다.
코드는 다음과 같습니다.
돌연변이:
export function removeAllProducts (state){
state.cart = []
}
export function shipping(state, cost){
state.cart.shipping = cost;
};
컴포넌트:
템플릿:
<input type="number" name="cost" :value="shippingCost" @input="updateCost">
스크립트:
computed: {
...mapState( 'cart', ['cart'] ),
...mapGetters('cart', ['totalItems', 'totalCost', 'shippingCost']),
shippingCost:{
get(){ return this.$store.getters.shippingCost; },
}
},
methods: {
...mapMutations('cart', ['addProductToCart', 'subtractProductToCart', 'removeProductFromCart', 'removeAllProducts', 'shipping' ]),
...mapMutations('routes', ['addRoute']),
updateCost (e) {
this.$store.commit('shipping', e.target.value)
}
}
}
당신은 당신의 돌연변이를 잘못 부를지도 모릅니다.이 행이 올바른 경우:
...mapMutations('cart', ['addProductToCart', 'subtractProductToCart', 'removeProductFromCart', 'removeAllProducts', 'shipping' ])
그러면 함수가updateCost
다음 항목이어야 합니다.
updateCost (e) {
this.$store.commit('cart/shipping', e.target.value)
}
모듈에서 네임스페이스를 true로 설정한 경우.또는 함수는 다음과 같은 기능을 사용할 수 있습니다.
updateCost (e) {
this.shipping(e.target.value)
}
이미 사용하셨기 때문에mapMutations
지도를 그리다shipping
컴포넌트에 접속합니다.
언급URL : https://stackoverflow.com/questions/56436806/vuex-does-not-find-a-mutation-but-it-is-defined
반응형
'programing' 카테고리의 다른 글
mysql에서 올바른 형식 및/또는 유효한 지오메트리를 확인합니다. (0) | 2022.11.06 |
---|---|
ST_CONTENS를 통한 성능 저하 (0) | 2022.11.06 |
MySQL 오류 #1133 - 사용자 테이블에서 일치하는 행을 찾을 수 없습니다. (0) | 2022.11.04 |
파손된 xampp 'mysql.user' 테이블 복구 방법 (0) | 2022.11.04 |
PHP에서 이메일을 검증하는 방법 (0) | 2022.11.04 |