Как правильно импортировать модульную библиотеку JS в рельсах с использованием ImportMap (Case Date-FNS)?Javascript

Форум по Javascript
Ответить Пред. темаСлед. тема
Anonymous
 Как правильно импортировать модульную библиотеку JS в рельсах с использованием ImportMap (Case Date-FNS)?

Сообщение Anonymous »

В моем приложении Rails 8 я использую ImportMap, и я хотел бы использовать Date-fns соответствующим образом, учитывая только одну функциональность и пару локалов из той библиотеки JS. Ниже я сделал то, что я сделал до сих пор. JS, .cjs, .cts и .ts Module Files) в приложении папки/Javascript/Vendor/Date-fns .
Затем я добавил Date-fns < /code> -colleted код в проект Rails следующим образом: < /p>

Код: Выделить всё

# config/importmap.rb

// ...

pin 'date-fns', to: 'vendor/date-fns/formatDistanceToNow.js'
pin 'date-fns/locale/it', to: 'vendor/date-fns/locale/it.js'
pin 'date-fns/locale/en-US', to: 'vendor/date-fns/locale/en-US.js'
< /code>
# app/javascript/controllers/time_ago_controller.js

import { Controller } from "@hotwired/stimulus"
import { formatDistanceToNow } from "date-fns";
import { it } from "date-fns/locale/it";
import { enUS } from "date-fns/locale/en-US";

// Connects to data-controller="time-ago"
export default class extends Controller {
// ...
}
< /code>
# show.html.erb

...

< /code>
Althrough the above does work, when I visit an app page then in the browser's "Developer Tools" > "Network" tab I see that many date-fns
-обращенные запросы JS (каждая загружающая индивидуальные импортируемые файлы date-fns .js, включая зависимые, также запускаются). Описание изображения здесь "src =" https://i.sstatic.net/jnny3kfd.jpg "/>
Это, кажется, происходит независимо от того, есть ли на странице или нет времени- назад контроллер стимула подключен. Кроме того, запросы Date-fns -обращенные JS не квалифицированы, если я повторно посещаю страницу, а файлы date-fns не отпечатлены отпечатков пальцев, как я и ожидал.
Кроме того, много посещений страницы, выполняющей все эти запросы JS, делают меня заблокированным ответом, таким как «слишком много запросов» (я использую драгоценный камень и, возможно, он обеспечивает защиту. .. но хорошо иметь такую ​​защиту, поэтому проблема должна быть решена с помощью даты загрузки fns ).
Как улучшить/решить? Как можно справиться с ситуацией, как вышеуказанное в рельсах, используя ImportMap? Я что -то упускаю?

Подробнее здесь: https://stackoverflow.com/questions/793 ... -case-date
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Javascript»