应用程序.js在 Rails 教程示例应用程序中找不到的资产



第一篇文章在这里。请温柔一点。:)

我使用的是最新的 Rails(6 多岁(。我正在使用这本书和在线版本来完成迈克尔·哈特尔的 RoR 教程。

一切都很好,直到第8章(本书第361页(说要更新应用程序/资产/javascripts/应用程序.js

我相信我找不到这个文件,因为Rails现在正在使用Webpacker处理这个问题。所以我在app/javascript/packs/application中看到了这一点.js

require("@rails/ujs").start()
require("turbolinks").start()
require("@rails/activestorage").start()
require("channels")

本教程希望应用程序.js文件如下所示:

//= require jquery
//= require bootstrap
//= require rails-ujs
//= require turbolinks
//= require_tree .

我是否转换(过时?将教程文件转换为类似于Webpacker文件中显示的代码,并将其添加到已经存在的文件中?还是以其他方式处理?

如您所见,您只缺少 app/javascript/packs/application 中的引导程序.js

要使用webpacker添加引导程序,您需要先使用yarn添加它: yarn add bootstrap@4.3.1 jquery popper.js

然后将应用程序/配置/webpack/环境.js调整为以下内容:

const { environment } = require('@rails/webpacker')
const webpack = require('webpack')
environment.plugins.append('Provide', new webpack.ProvidePlugin({
  $: 'jquery',
  jQuery: 'jquery',
  Popper: ['popper.js', 'default']
}))
module.exports = environment

现在最后一步是在app/javascript/packs/application中导入bootstrap.js

import 'bootstrap'

最新更新