Jquery Проверка в Rails 6.0.2 с использованием webpacker - PullRequest
2 голосов
/ 06 мая 2020

Я создал образец приложения для блога с подписчиками. Технология, используемая для этого приложения

  • Ruby: 2.6.3
  • Rails: 6.0.2
  • Webpacker: 4.2.2

Я подтверждаю свою форму подписчика с помощью Jquery -Validation, чтобы убедиться, что пользователь вводит действительный адрес электронной почты.

<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.4.1.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js"> 
</script>
<script type="text/javascript">
    $("#new_subscriber").validate({
      rules: {
        "subscriber[email]": {
          required: true,
          email: true
        }
      }
    });
</script>

Это работает локально, но не компилируется, поэтому позже было понято и добавлено

yarn add jquery

#in environment.js
const webpack = require('webpack')
environment.plugins.prepend('Provide',
  new webpack.ProvidePlugin({
    $: 'jquery/src/jquery',
    jQuery: 'jquery/src/jquery'
  }),
)

yarn add jquery-validation

Не знаю, как это вызвать в envionment. js

Мой текущий пакет. json

{
  "name": "SampleBlog",
  "private": true,
  "dependencies": {
    "@rails/actioncable": "^6.0.0",
    "@rails/activestorage": "^6.0.0",
    "@rails/ujs": "^6.0.0",
    "@rails/webpacker": "4.2.2",
    "jquery": "^3.5.1",
    "jquery-validation": "^1.19.1",
    "turbolinks": "^5.2.0"
  },
  "version": "0.1.0",
  "devDependencies": {
    "webpack-dev-server": "^3.10.3"
  }
}

Проверка не работает. Позже я создал дом. js в javascript / packs и написал этот код

require("jquery")
require("jquery-validation")

$("#new_subscriber").validate({
  rules: {
    "subscriber[email]": {
      required: true,
      email: true
    }
  }
});

Включил это в. html .erb также

<%= javascript_pack_tag 'home' %>

Никакой помощи ошибка консоли, проверка не является функцией

Любая обратная связь будет очень полезна

...