Vue-carousel: I am getting error when try to implement in vue3

Created on 7 Sep 2020  路  3Comments  路  Source: SSENSE/vue-carousel

vue-carousel.min.js?0a63:6 Uncaught (in promise) TypeError: Cannot read property '_c' of undefined
at Proxy.r (vue-carousel.min.js?0a63:6)
at renderComponentRoot (runtime-core.esm-bundler.js?5c40:535)
at componentEffect (runtime-core.esm-bundler.js?5c40:4286)
at reactiveEffect (reactivity.esm-bundler.js?a1e9:42)
at effect (reactivity.esm-bundler.js?a1e9:17)
at setupRenderEffect (runtime-core.esm-bundler.js?5c40:4269)
at mountComponent (runtime-core.esm-bundler.js?5c40:4227)
at processComponent (runtime-core.esm-bundler.js?5c40:4183)
at patch (runtime-core.esm-bundler.js?5c40:3788)
at mountChildren (runtime-core.esm-bundler.js?5c40:3996)

Most helpful comment

This error is caused by template loader in Vue@3, which works differently than Vue@2. There is no easy way to keep current version of vue-carousel, and support newer version of Vue, without affecting the code and preparing new release with tailored fixes:

  • vue-loader needs to be updated to newer version like 16v+
  • webpack alias needs to be deleted (https://github.com/SSENSE/vue-carousel/blob/master/webpack.common.js#L27)
  • vue-template-compiler needs to be deleted, vue@3 uses @vue/compiler-sfc which is a part of vue-loader

IMO, best way to avoid this mismatch is to create seperate next tag for [email protected], something like vue-carousel@next, and keep all updates there.


Thats pretty sad to say, but this library is totally not supported by the owners - Just look of the list of Issues and PR - Some of them was created 1-2 years ago, without any feedback/progress/response from the maintainers.

In our projects we're still using vue-carousel, but we decided to progressive quit vue-carousel, and jump into our new library vue-snap (Currently We don't have much functionalities as vue-carousel, but we have ambitious aim to make it bigger, with much more capabilities and totally lightweight apporach (ESM, and Tree Shaking Support) - Feel free to join us a part of contributiors, or just write your own feature requests)

All 3 comments

Same issue!

This error is caused by template loader in Vue@3, which works differently than Vue@2. There is no easy way to keep current version of vue-carousel, and support newer version of Vue, without affecting the code and preparing new release with tailored fixes:

  • vue-loader needs to be updated to newer version like 16v+
  • webpack alias needs to be deleted (https://github.com/SSENSE/vue-carousel/blob/master/webpack.common.js#L27)
  • vue-template-compiler needs to be deleted, vue@3 uses @vue/compiler-sfc which is a part of vue-loader

IMO, best way to avoid this mismatch is to create seperate next tag for [email protected], something like vue-carousel@next, and keep all updates there.


Thats pretty sad to say, but this library is totally not supported by the owners - Just look of the list of Issues and PR - Some of them was created 1-2 years ago, without any feedback/progress/response from the maintainers.

In our projects we're still using vue-carousel, but we decided to progressive quit vue-carousel, and jump into our new library vue-snap (Currently We don't have much functionalities as vue-carousel, but we have ambitious aim to make it bigger, with much more capabilities and totally lightweight apporach (ESM, and Tree Shaking Support) - Feel free to join us a part of contributiors, or just write your own feature requests)

A similar library for vuejs 3.0 but with limited functionality: https://ismail9k.github.io/vue3-carousel/

Was this page helpful?
0 / 5 - 0 ratings