ES6, вызывать конкретный модуль только на определенной странице - PullRequest
0 голосов
/ 18 апреля 2019

Я перевожу мое приложение js из coffeescript на ES6.

В coffeescript у меня есть этот класс

class Init
  constructor: ->
    page = "#{$('body').data('page')}"
    @execute_page_js(page)
  execute_page_js: (page) ->
    if 'function' is typeof window.App[page]
      klass = window.App[page]
      new klass()

$(document).on 'turbolinks:load', ->
  new Init()

Обычно я добавляю на определенную страницу атрибут данных, а затем ищу класс с таким именем и выполняю его.

Теперь у меня есть:

import contentDatatable from './admin_contents_index.js';
import userDatatable from './admin_users_index.js';
import magazineDatatable from './admin_magazines_index.js';

(function init() {
  const contentDT = contentDatatable();
  const userDT = userDatatable();
  const magazineDT = magazineDatatable();
  document.addEventListener("turbolinks:load", () => {
    contentDT.init();
    userDT.init();
    magazineDT.init();
  });
}());

Я не могу понять, как запустить модуль только на определенной странице.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...