Install Pinia
❶ 패키지 관리자를 사용하여 pinia 설치
Can't import the named export 'computed' from non EcmaScript module (only default export is available)
Webpack bundler .mjs 파일을 해석하지만 그것이 ESM 모듈이라는 것을 알지 못한다는 것을 의미한다. 이문제는 vue.config.js 파일에 webpack 규칙에 추가하여 해결 할 수 있다.
module.exports = {
configureWebpack: {
module: {
rules: [
{
test: /\.mjs$/,
include: /node_modules/,
type: "javascript/auto"
}
]
}
},
Uncaught Error: [🍍]: getActivePinia was called with no active Pinia. Did you forget to install pinia?
const pinia = createPinia()
app.use(pinia)
This will fail in production.
import { useStreamStore } from '@/store/streamStore'
import { pinia } from "@/store";
const streamStore = useStreamStore(pinia);
문제 ③ - Chrome 개발자 모드에서 확인
pinia.mjs?be92:926 Uncaught TypeError: Cannot read properties of undefined (reading 'startsWith') at devtoolsPlugin (pinia.mjs?be92:926:1)
Chrome 개발자 도구에서는 확인되지 않았지만 Firefox 에서 Vue Devtools 를 설치하고 확인한 결과 원인을 확인 할 수 있었다.
사용후기
pinia 를 적용하고 2주 정도 사용을 해보니 여러 장점들이 보이기 시작했다. vuex 경우는 하나의 저장소를 생성하면 state, getters, mutations, actions, modules 속성을 필요에 따라 정의해야 하는데 여간 불편한 것이 아니어서 멀리하는 경향이 있었다.(로그인의 경우만 적용) pinia 의 경우 이부분이 단순화 되어 있어 적용이 쉬웠다. 또한 자꾸 사용을 하다 보니 왜 Vue 에서 store, service 로 모듈화시켜 개발하는지 조금 이해가 되었다. (다수의 vue 오픈소스를 보면 store, service 로 모듈화 되어 있었다.)
댓글 없음:
댓글 쓰기