Tag: ecmascript 6

Использует импорт ES6 для загрузки определенных имен быстрее, чем импорт пространства имен?

Я нашел как минимум два способа импорта функций из модуля, например, Ramda. Есть, вероятно, еще несколько способов сделать что-то очень похожее, например const R = require(‘ramda’); Вариант 1 заключается в том, чтобы импортировать определенные функции: import { cond, T, always, curry, compose } from ‘ramda’; Вариант 2 – импортировать весь модуль следующим образом: import * […]

Синтаксическая ошибка в IE с использованием функций ES6 arrow

У меня есть эта часть кода JavaScript price = price.replace(/(.*)\./, x => x.replace(/\./g,”) + ‘.’) Это отлично работает в Firefox и Chrome, однако IE дает мне синтаксическую ошибку, указывающую на => в моем коде. Есть ли способ использовать синтаксис стрелок ES6 в IE?

Когда следует использовать скобки с импортом

У меня есть два файла, первый – todoHelper.js он имеет export const addTodo = (list, item) => […list, item] позже я хочу использовать addTodo в другом файле, я просто import {addTodo} from ‘./todoHelpers’ Но я также вижу, что люди выполняют экспортный дефолт, а не только экспорт. В чем отличия?

Javascript: В чем разница между функцией и classом

С выпуском ECMAScript 6 в июне 2015 года был введен синтаксис classов Javascript. Этот синтаксис: class Polygon { constructor(width, height) { this.width = width; this.height = height; } } в основном такой же, как: function Polygon(width, height) { this.width = width; this.height = height; } Итак, в чем преимущество использования classа вместо традиционной функции? И […]

ES6 стрелки не работают над прототипом?

Когда функции ES6 Arrow не работают для назначения функции объекту с prototype.object. Рассмотрим следующие примеры: function Animal(name, type){ this.name = name; this.type = type; this.toString = () => `${this.name} is a ${this.type}`; } var myDog = new Animal(‘Max’, ‘Dog’); console.log(myDog.toString()); //Max is a Dog Использование функции стрелки явно в определении объекта работает, но с помощью […]

Как сообщить серверу webpack dev для обслуживания index.html для любого маршрута

React router позволяет реагировать приложения на обработку /arbitrary/route . Чтобы это работало, мне нужно, чтобы мой сервер отправлял приложение React на любой согласованный маршрут. Но сервер webpack dev не обрабатывает произвольные конечные точки. Здесь используется решение с использованием дополнительного express-сервера. Как разрешить webpack-dev-серверу разрешать точки входа от реактивного маршрутизатора Но я не хочу запускать другой […]

В чем разница между «let» и «const» ECMAScript 6?

Мне интересно, в чем разница между let и const в ECMAScript 6. Оба они являются блочными областями, как пример в следующем коде: const PI = 3.14; console.log(PI); PI = 3; console.log(PI); const PI = 4; console.log(PI); var PI = 5; console.log(PI); В ECMAScript 5 вывод будет: 3.14 3.14 3.14 3.14 Но в ECMAScript 6 это […]

Динамически импортировать изображения из каталога с помощью webpack

Итак, вот мой текущий рабочий процесс для импорта изображений и значков в webpack через ES6: import cat from ‘./images/cat1.jpg’ import cat2 from ‘./images/cat2.svg’ import doggy from ‘./images/doggy.png’ import turtle from ‘./images/turtle.png’ Это быстро становится беспорядочным. Вот что я хочу: import * from ‘./images’ Я чувствую, что должен быть какой-то способ динамически импортировать все файлы из […]

Что такое геттеры и сеттеры для classов ECMAScript 6?

Я смущен тем, что точка getters и seters находится в classах ECMAScript 6. В чем цель? Ниже приведен пример, который я имею в виду: class Employee { constructor(name) { this._name = name; } doWork() { return `${this._name} is working`; } get name() { return this._name.toUpperCase(); } set name(newName){ if(newName){ this._name = newName; } } }

Расширение ошибки в Javascript с синтаксисом ES6 и Babel

Я пытаюсь расширить Error с ES6 и Babel. Он не работает. class MyError extends Error { constructor(m) { super(m); } } var error = new Error(“ll”); var myerror = new MyError(“ll”); console.log(error.message) //shows up correctly console.log(myerror.message) //shows empty string Объект Error никогда не получает правильный набор сообщений. Попробуйте в Babel REPL . Теперь я видел […]

Давайте будем гением компьютера.