поделиться Stimulus js контроллер с рельсами двигателя - PullRequest
0 голосов
/ 16 января 2020

Я разрабатываю рельсовый движок для Rails6. Я хотел бы включить контроллер Стимул в этот двигатель рельсов. Основное приложение использовать Webpacker. и хотел бы переместить grid_controller. js в мои движки rails, поскольку он автоматически включается в основное приложение.

app / javascript / packs / application. js
require("@rails/ujs").start()
require("turbolinks").start()
require("@rails/activestorage").start()
require("channels")
import { Application } from "stimulus"
import { definitionsFromContext } from "stimulus/webpack-helpers"
app / javascript / controllers / grid_controller. js
import { Controller } from "stimulus"

export default class extends Controller {
sort(event) {
  var urlParams = new URLSearchParams(location.search);
  var attr = event.target.dataset.attr
  var dir = urlParams.get("dir") || 'asc'
  var currentAttr = urlParams.get("sort")
  var currentURL = window.location.origin+window.location.pathname
  if (attr == currentAttr){
    dir = ((dir == 'asc') ? 'desc' : 'asc')
  }
  var gotoURL = currentURL+'?'+'sort='+attr+'&'+'dir='+dir
  window.location.href = gotoURL

}
}

структура в моем двигателе

...