【问题标题】:Is there a unified way to install JS third party libraries (like QuillJS) in Rails 6?在 Rails 6 中安装 JS 第三方库(如 QuillJS)有统一的方法吗?
【发布时间】:2019-10-05 12:09:50
【问题描述】:

我安装了 Rails 6 RC1,我想用它创建一个新项目,但是由于 webpack 默认功能,它变成了一场噩梦,如果你想添加 jQuery,我将面临安装第三方 JS 库的困难和引导程序,例如,您应该像这样在environment.js 中进行一些奇怪的设置

environment.plugins.prepend('Provide', new webpack.ProvidePlugin({
        $: 'jquery',
        JQuery: 'jquery',
        jquery: 'jquery',
        Popper: ['popper.js', 'default'], // for Bootstrap 4
    })
)

如果你想添加 jQuery-ui 你必须搜索并希望你能找到一些链接告诉你this one

// jquery
import $ from 'jquery';

global.$ = $
global.jQuery = $


require('jquery-ui');

// jquery-ui theme
require.context('file-loader?name=[path][name].[ext]&context=node_modules/jquery-ui-dist!jquery-ui-dist', true,    /jquery-ui\.css/ );
require.context('file-loader?name=[path][name].[ext]&context=node_modules/jquery-ui-dist!jquery-ui-dist', true,    /jquery-ui\.theme\.css/ );

现在如果你想添加 QuillJS 怎么办?您可能会像我一样进行研究,并最终在QuillJS doc 中告诉您添加:

import Quill from 'quill/core';

import Toolbar from 'quill/modules/toolbar';
import Snow from 'quill/themes/snow';

import Bold from 'quill/formats/bold';
import Italic from 'quill/formats/italic';
import Header from 'quill/formats/header';


Quill.register({
  'modules/toolbar': Toolbar,
  'themes/snow': Snow,
  'formats/bold': Bold,
  'formats/italic': Italic,
  'formats/header': Header
});


export default Quill;

只是为了发现 QuillJs UI 没有出现!!

您看到很多代码只是为了安装 2 或 3 个库,然后我花了很多时间搜索如何添加东西,或者如何使您已经找到/添加的代码工作......

asset pipeline 变得更加容易和快速,为什么仅仅因为 webpack 是 JS 世界的新事物就让我们的生活变得复杂呢??

有什么方法可以轻松安装 JS 库吗?我更喜欢手动添加它们而不是使用这个 webpack 东西!

【问题讨论】:

  • 一步可能是运行yarn add quill@1.3.6,但之后我有点迷茫(将导入的东西添加到application.js不会在javascript控制台中公开Quill)。你设法走得更远吗?这可能会有所帮助:devwoot.com/article/blog/rubyonrails/2018/09/16/…
  • @Felix 我发布这个已经有一段时间了,当时为了用 QuillJS 解决这个问题,我通过 CDN 链接在我的应用程序布局中添加了它,这是最简单的方法,但从那以后我得到了更多有机会深入了解 webpack 的事情......每当我找到一些空闲时间时,我会尝试在解决方案中回复你,同时继续通过脚本标签和链接标签(对于 css)使用 Quilljs,你可以调整以后的事情
  • 如果有人有兴趣回答这个问题,请在下面留言,我会尽力为你们写一个很好的解释
  • 不能更同意 OP - 我认为 webpack on rails 6 已经被引入为开发人员自动化事情并让我们的生活更轻松,但到目前为止,像这样的问题只是让事情变得更加复杂 - 我'现在已经通过 CDN 添加它,直到有人在这里阐明正确的方法!
  • @SamiBirnbaum 我会争取一些时间并在明天之前发布一个详细的答案,这并不难:) 但现在,是的,你可以通过 CDN 添加它

标签: javascript ruby-on-rails webpack ruby-on-rails-6


【解决方案1】:

要回答我的问题...没有诸如“统一方式”之类的东西,您当然可以在您的 javascript 文件夹中创建某种文件夹并下载您想要的第三方库,然后将其导入您的应用程序中。 js,这会很好,但如果你这样做,那么为什么要使用包管理器(Yarn)或 webpacker 呢?

我写了an article,它解释了一些关于 webpack on rails 的提示,我解释了如何安装和使用 QuillJS,例如...这里是链接:

https://medium.com/@technoblogueur/rails-6-and-webpacker-what-you-need-to-know-e3534fded7ff

我会尝试找一些时间,然后回到这个答案,用更多的代码和示例更新它,但与此同时,上面的文章可以节省你的时间:)

【讨论】:

    猜你喜欢
    • 2014-03-23
    • 1970-01-01
    • 1970-01-01
    • 2016-10-26
    • 1970-01-01
    • 1970-01-01
    • 2017-06-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多