расширить jQuery в приложении реакции (пользовательские функции jQuery в цепочке) - PullRequest
0 голосов
/ 10 октября 2019

ДО ТОГО, КАК ВЫ МЕНЯЕТЕ, ЧТОБЫ ЗАПРОСИТЬ ЭТО, ПОЖАЛУЙСТА, ПРОЧИТАЙТЕ: Я знаю, что реакция заменяет 99% случаев использования для jQuery. Однако я хочу, чтобы что-то происходило, когда пользователь наводит курсор на элементы, и я не знаю, что реакция может сделать это. Также у меня есть код, который работает в jquery, и я не хочу его переписывать.

Большая часть моего кода jQuery работает нормально.

В своем коде jQuery я использовал пользовательские цепочечные функции. Я попытался вставить приведенный ниже код в componentDidMount, а также непосредственно внизу index.html, но всегда получаю:

jQuery не определен .

jQuery.fn.extend(
{
 // returns the collection of td cells in the same column as obj_td
tableColumn: function(){
  const $td_this= ancestorTagName("td")
  // both td with right version
  var rows = this.ancestorTagName("table").find('tr');
  console.log("chain tableColumn rows=", rows)
  if (rows === $()) return $() // probably called outside a table
  // index is the number of siblings prior to this one  
  var index = $td_this.prevAll().length;  
  console.log("chain tableColumn index=", index)
  let cols = rows.find(':nth-child(' + (index + 1) + ')')
  cols=cols.filter4tag('td')
  return cols
  },
   ...
  }

Цель состоит в том, чтобы использовать выражения типа

let $top_Product = jqObj.tableColumn().find('.version') 

, чтобы найти ячейку в том же столбце с классом .version .

У меня есть import$ from 'jquery'; в верхней части App.js, и я включил компонент jquery в проект REACT.

...