0

挣扎了很多,但无法解决这个问题。这对我来说是一场噩梦。我正在使用 rails 6. 和 jquery ui“jquery-ui”:“^1.13.0”。我添加了 gemgem 'acts_as_list'并添加了 yarn as yarn add jquery-ui

我已在 application.js 文件中添加

`require("jquery-ui/ui/widget")
 require("jquery-ui/ui/widgets/sortable")`

并添加了代码

$(document).on("turbolinks:load", () => {
$("#employeeLevel").sortable({
  handle: '.handle',
  update: function(e, ui) {
    Rails.ajax({
      url: $(this).data("url"),
      type: "PATCH",
      data: $(this).sortable('serialize'),
      success: function(result){
        console.log('my msg'+result);
      }
    });
  }
 });
})

在 index.html.slim 中添加了一个 id 作为

tbody id="employeeLevel" data-url="<%= sort_employee_levels_path %>"

等待你的答复。先感谢您

4

1 回答 1

1

这是我对可排序的要求:

import 'jquery'
import 'jquery-ui/themes/base/core.css'
import 'jquery-ui/themes/base/theme.css'
import 'jquery-ui/ui/widgets/sortable'
import 'jquery-ui/themes/base/sortable.css'

您可能需要在以下位置公开 jQuery config/webpack/environment.js

// Expose jQuery to scripts external to webpack
environment.loaders.append('expose', {
  test: require.resolve('jquery'),
  loader: 'expose-loader',
  options: {
    exposes: ['$', 'jQuery']
  }
})
于 2021-11-10T19:56:42.260 回答