vue使用bootstrap轮播的插件。显示.carousel is not a function

发布于 2022-09-05 02:01:14 字数 202 浏览 22 评论 0

clipboard.png
$('#myCarousel').carousel('pause');这个是按照教程上的方式写的。求大神指点

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

流年里的时光 2022-09-12 02:01:14

楼上说了,Bootstrap依赖jQuery,这是没错的,但是在Vue里面使用Bootstrap是不需要重写所有插件的。

解决方法如下:

main.js里依次载入jQuery的JSBootstrap的JS和CSS(用import xxx.jsimport xxx.css),如果是用npm install装上的jQueryBootstrap,那么加载语句类似

import 'jquery/dist/jquery.js'
import 'bootstrap/dist/css/bootstrap.css'
import 'bootstrap/dist/js/bootstrap.js'

其中,后缀名.js是可以省略的。

然后,这样还无法使Vue识别到加载进去的jQuery插件,所以需要在打包配置中加入一些新内容。
build\webpack.base.conf.js配置文件中添加plugins配置(如果原来就有此配置部分则直接将内容添加进去即可),修改完的build\webpack.base.conf.js文件类似:(部分无关代码被省略)

var path = require('path');
...
var webpack = require('webpack'); // 注意这一行一定要加上,原本配置中没有,如果不加会导致下面报错webpack未定义
...

module.exports = {
    entry: { ... },
    output: { ... },
    resolve: { ... },
    module: { ... },
    ...
    plugins: [
        new webpack.ProvidePlugin({
            jQuery: 'jquery',
            $: 'jquery'
        })
    ]
};

然后就可以在Vue项目里和正常一样使用jQuery了。

我看你的代码报错,看起来你现在是用的Zepto。由于ZeptojQuery的语法类似但是实现方法是有区别的,所以我建议你将Zepto换成jQuery按照上面的方法配置一下。

紫﹏色ふ单纯 2022-09-12 02:01:14

因为bootstrap依赖jquery 你需要使用vue(原生js)重写过的插件

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文