我正在将我的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();
});
}());
我不明白如何只能在特定页面上初始化模块。