Как стать автором
Обновить
51
0
Kolyaj @Kolyaj

Пользователь

Отправить сообщение

await же просто ждёт резолва промиса. Возвращайте из конструктора промис, будет у вас асинхронный конструктор.

var A = class {
  constructor(foo) {
    this._foo = foo;
    return new Promise((resolve) => {
      setTimeout(() => {
        resolve(this);
      }, 1000);
    })
  }
  
  getFoo() {
    return this._foo;
  }
};

(async () => {
  var a = await new A(5);
  console.log(a.getFoo());
})();

Float в целое число
Math.floor(123456789012345.1);  // 123456789012345
123456789012345.1 | 0;  // -2045911175

Упс.
Конечно. Вы можете не поддерживать IE8, но о наличии ошибок в нём знать надо. Не говоря уже о том, что скрипт для сбора ошибок, генерирующий ошибки – что-то неправильное.
Денис, привет!

Я пару лет назад даже сервис поверх api метрики писать начал http://jserrs.com, но как-то всё застопорилось :-)
Согласен, проще. Но, 1) в урле нельзя ничего передавать, некоторые сайты от этого ломаются, 2) показывать интерфейс внутри чужой страницы плохо, поэтому проксирование всё-таки нужно.
Да, если страница не даёт загрузить себя в ифрейм, то воспроизвести на ней ничего не получится.
Хм. А что по вашему Яндекс реализовал в Вебвизоре? В вебвизоре, например, есть режим, в котором проигрываемая страница грузится прямо с сайта, без всяких прокси.
Ну не просто конкатенацию. Как минимум, она следит за тем, чтобы каждый файл подключился в сборку только один раз. Ещё умеет «вырезать» файлы из сборки. Есть у вас файл common.js, в котором подключаются общие файлы, в bundle.js можно указать, что файлы из common.js подключать не надо.

Из совсем специфического есть условная сборка и возможность делить файлы на логические блоки.
Yaxy можно использовать как модуль. В пакете отдельно лежат модуль и консольная утилита, использующая этот модуль. Модуль не задокументирован, поэтому я не писал про него.

Возможности модуля гораздо больше. Например, можно матчиться не только на урл, а на наличие какого-то http-заголовка.

При желании иметь скриптуемую проксю, проще просто js-скрипт написать. Будет что-то вроде
var server = require('yaxy')(8558);
server.bind({
    refererStart: 'http://www.yandex.ru/',  // Перехватить запрос с реферером от Яндекса
    fn: function(state) {
        console.log(state.getRequestUrl());
        state.doRequest();
    }
});


Или можно взять node-webkit и сделать gui интерфейс.
Пока никак.
1.
my-site.dev => file:///home/me/my-site

Параметры после ? будут игнорироваться.

2. Да, но в отличие от /etc/hosts в браузере нужно явно указывать прокси-сервер.
/^http://[^.]+\.site\.my/ => localhost:9898

В левой части правила может быть регулярка.
Ой.
Поправил, спасибо.
С https пока не заморачивался. Но ходить на https умеет. Т.е. по задумке, если надо что-то подменить на сайте с https, можно создать правило

site.ru/main.js => file:///home/me/main.js
site.ru => https://site.ru

А вот перехватить запрос к https с Yaxy не получится, по крайней мере пока.
Обновите пакет, должно заработать.
Кажется понял в чём беда, лишние \r в запускаемом скрипте. Обновите пакет, должно заработать.
Тут если только кто-нибудь за пулреквестит. Я, к сожалению, могу только читать английский. Школьный немецкий меня гнетёт.
Кажется, что npm как-то криво поставил пакет. У вас node в стандартном месте лежит?

Попробуйте поставить локально в какую-нибудь папку npm install yaxy (без -g) и запустить явно node yaxy (только в папку node_modules надо войти).
Тут два обстоятельства:
1. Обкатывал на себе.
2. Заставлял себя написать статью.
А, вы про это. Тут ничего не изменится. Проверяли файл hosts, а будете проверять конфиг Yaxy. Hosts при наличии Yaxy не нужен.

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность