Как правильно включить библиотеку в веб-пакете? - PullRequest
0 голосов
/ 19 октября 2019

Я использую Rails 6 с веб-пакетом. Я хочу использовать библиотеку jquery-textcomplete, но не знаю, как мне включить ее в файл application.js.

Мои шаги:

  1. У меня установлена ​​jquery-textcomplete через yarn add jquery-textcomplete
  2. Я включаю это в application.js как import 'jquery-textcomplete' или require('jquery-textcomplete')
  3. Я вижу библиотеку в скомпилированном js-файле

Но я получаю ошибку ncaught TypeError: $(...).textcomplete is not a function. Если я включу его через CDN, все будет работать нормально. Подскажите, пожалуйста, как мне поступить? Помогите мне, пожалуйста.

мой webpack/environment.js

const { environment } = require('@rails/webpacker')
const coffee =  require('./loaders/coffee')
const webpack = require('webpack')

environment.plugins.prepend('Provide',
    new webpack.ProvidePlugin({
        $: 'jquery/src/jquery',
        jQuery: 'jquery/src/jquery'
    })
)

environment.loaders.prepend('coffee', coffee)
module.exports = environment

мой application.js

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

import 'jquery-textcomplete';

my package.json

{
  "name": "my_app",
  "private": true,
  "dependencies": {
    "@rails/actioncable": "^6.0.0-alpha",
    "@rails/activestorage": "^6.0.0-alpha",
    "@rails/ujs": "^6.0.0-alpha",
    "@rails/webpacker": "^4.0.7",
    "coffee-loader": "^0.9.0",
    "coffeescript": "1.12.7",
    "jquery": "^3.4.1",
    "jquery-textcomplete": "^1.8.5",
    "turbolinks": "^5.2.0"
  },
  "version": "0.1.0",
  "devDependencies": {
    "webpack-dev-server": "^3.8.1"
  }
}

1 Ответ

0 голосов
/ 19 октября 2019

Это решение помогло мне. Я действительно не заметил, что у меня было по умолчанию src путь.

...