Not able to use pinia: No matching export in "node_modules/pinia/node_modules/vue-demi/lib/index.mjs" for import "hasInjectionContext"
shree-c opened this issue · 15 comments
Reproduction
https://github.com/shree-c/mock_two_test_pinia
Steps to reproduce the bug
Expected behavior
I am doing basic activity such as creating a store and importing it into a component.
Actual behavior
Vite not able to build both for dev and prod.
I am getting the following error on vite terminal:
No matching export in "node_modules/pinia/node_modules/vue-demi/lib/index.mjs" for import "hasInjectionContext"
Additional information
No response
You need to update vue to 3.3. I should have set the peer dep...
@shree-c @shunyue1320 hey guys, any updated? i have the same issue while migrating from vue-cli to vite
For me, work update to vue 3.3.4
"pinia": "^2.1.3",
"vue": "^3.3.4",
Argg.... had to downgrade to 2.0.35 because of this bug. @posva There are a lot of 2.7 installations in the field. Upgrading to vue 3.x is very often not possible. So to others with the same problem: Vue 2.7 only works with Pinia 2.0.35 (and below???, not tested)
I just upgraded vue and pinia both to the latest versions and everything is ok
For vue 2 update vue-demi so it has the correct exports
uniapp 使用pinna必须使用固定的版本
少了一行导出而已,加上就完了,yarn install后执行一行命令把代码添加进index.mjs就行了
echo 'export function hasInjectionContext() {return !!Vue.getCurrentInstance()}' >> ./node_modules/vue-demi/lib/index.mjs
The fix for a fresh vite + vue 2.7 app was to downgrade pinia from 2.1.7 to 2.0.x. Seems there was some regression in the dependency chain. Hope this helps the next person that sees this GitHub issue in the search results trying to troubleshoot this problem and hopefully this issue will be resolved in a future version of pinia.