Как использовать import/export в js?

225
20 марта 2018, 03:16

Продолжаю работать над портфолио. Сделал слайдер и решил выпилить его в модуль.

export function next() { // code }
export function prev() { // code }

Ну и скрипт слайдера

import { next, prev } from './modules/slider.js';

Исходники залил на github

Проблемы следующие :)

  1. Почему "type="module" я прописываю в 'main'.js, а не в модуль? Хотя и к самому модулю также не мешает прописать, а иначе хром немного ругается. Uncaught SyntaxError: Unexpected token export Фактически всё работает, но вот ругается.

  2. Ну да и неважно. Firefox вообще отказывается читать как первый, так и второй файлы. В зависимости от различных комбинаций (порядок подключения и кому присвоить тип модуля) выдает ошибку к импорту или экспорту. SyntaxError: export declarations may only appear at top level of a module

Так что, это и есть главный вопрос - как заставить это работать в firefox? Ведь поддержка уже относительно неплохая, разве нет? И пока я создавал репозиторий для слайдера, я понял, что не навесил ивенты на радио-кнопки. Ну да черт с ними :)

READ ALSO
Webpack проблема с областью видимости

Webpack проблема с областью видимости

Добрый день! Есть несколько модулей, которые подключены к appjs, вот например код, который лежит внутри:

174
Анимированная строка в инпуте

Анимированная строка в инпуте

Суть задачи в том, что есть два инпута, в одном инпуте вводиться строка, во втором инпуте она с анимацией выводитсяПопробовал реализовать,...

229
как сделать елементы в массиве в uppercase

как сделать елементы в массиве в uppercase

Задача состоит в том, чтобы при поиске елементов в массиве делать их в uppercase, как это можно сделать? Я пытался делать через arrindexOf(department)

171
Обьясните данную кострукцию arr.push

Обьясните данную кострукцию arr.push

Я читал про метод массива arrpush добавляет в конец массива елемент

187