javascript - Rails 6:通过 Webpacker 包含 3rd Party Yarn 库
问题描述
我将 jQuery 添加到 Webpack 中,它似乎可以工作。
我试图添加一个名为“Swiper”的 JS 库,但我只是不知道如何包含它。
这是我所做的:
yarn add swiper
(成功)
环境.js:
const { environment } = require('@rails/webpacker')
const webpack = require('webpack')
environment.plugins.prepend('Provide',
new webpack.ProvidePlugin({
$: 'jquery/src/jquery',
jQuery: 'jquery/src/jquery',
Swiper: 'swiper'
})
)
module.exports = environment
应用程序.js:
require("@rails/ujs").start()
require("turbolinks").start()
require("@rails/activestorage").start()
require("channels")
require('jquery')
import 'Swiper';
在我的控制台中,我得到:
未捕获的错误:找不到模块“Swiper”
未捕获的 ReferenceError:未定义 Swiper
额外的问题:我怎么能只在特定视图上包含 Swiper JS?例如我只需要它gallery.html.erb
解决方案
在你的application.js
:
import Swiper from 'swiper'
window.Swiper = Swiper
我认为没有必要把它放在你的environment.js
推荐阅读
- vue.js - 错误“无法读取未定义的属性 'indexOf'”绑定 n-api 模块
- c# - 为什么我总是有无效的视图模型?
- ios - 如何从纯 Swift 项目访问纯 Swift 静态库?
- python - 如何在 python 中将我的结果写入 .csv 文件的两行?
- r - Rstudio中的SIR模型闪亮
- angularjs - 将函数注入 angularjs 模块的最简单方法是什么?
- asp.net-core - .Net Core 项目引用 .Net Frameork 项目有问题吗?
- android - AndroidXMapFragment 从片段初始化时返回 null
- javascript - 为什么 load 没有加载我的 data.text 文件?
- angular - 具有角度和弹簧引导的路由权限的用户登录