Size: a a a

2019 December 17

К

Константин in javascript_ru
какой-то дикий кастыль
источник

AA

Anton Antonov in javascript_ru
Константин
какой-то дикий кастыль
а ты думаешь бабель плагин написать такой, что интеллисенс его поддерживать сможет?
источник

AA

Anton Antonov in javascript_ru
энвы интеллисенс должен поддерживать вроде как
источник

АГ

Андрей Гуртовой in javascript_ru
[object Object]
Букмаркет - это книжный магазин. Ты же говоришь о букмаркЛетах.
Благодарю за поправку)
источник

К

Константин in javascript_ru
Anton Antonov
а ты думаешь бабель плагин написать такой, что интеллисенс его поддерживать сможет?
Я не думаю, я говорю что любой его хотелка кастыль
источник

К

Константин in javascript_ru
можно написать, но ток надо еще и линтеру правило написать
источник

К

Константин in javascript_ru
он месяц будет плагин писать, чтобы не импортировать константы
источник

AA

Anton Antonov in javascript_ru
кекеке
источник

AA

Anton Antonov in javascript_ru
Константин
Я не думаю, я говорю что любой его хотелка кастыль
я на ник не посмотрел, думал это ты вопрос задавал
источник

AA

Anton Antonov in javascript_ru
Константин
он месяц будет плагин писать, чтобы не импортировать константы
а чем env переменные плохи? интеллисенс про них знает же
источник

К

Константин in javascript_ru
Вангамод не работает.
Ему же нужно динамически создавать поля в объекте, и при этом зачем - никто не знает.
источник

К

Константин in javascript_ru
Причем у него там походу вычислимое все, и сам объект (значения свойств), и имена свойств
источник

К

Константин in javascript_ru
Но это не решает вопроса почему нельзя импортировать, лол:)
источник

К

Константин in javascript_ru
объект же экспортируется не копированием, а тупо ссылкой
источник

К

Константин in javascript_ru
но есть же кастыль
источник

К

Константин in javascript_ru
берём конкат и просто пишем в разных файлах
источник

К

Константин in javascript_ru
Привет ес5, пока линтер, интелисенц, Бабель тоже нафиг не нужен.
uglify js (terser ныне) в помощь.
источник

AA

Anton Antonov in javascript_ru
Константин
Вангамод не работает.
Ему же нужно динамически создавать поля в объекте, и при этом зачем - никто не знает.
вот тоже понять не могу
источник

M

Maksim in javascript_ru
Я уже всё написал, всё работает.
Плагин:
const CODES = {
SAI: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',
DAI: '0x6b175474e89094c44da98b954eedeac495271d0f',
...
};

module.exports = function logger({
types: t,
}) {
return {
  visitor: {
    MemberExpression(path) {
      const code = CODES[path.node.property.name];
      if (
        code !== undefined &&
        path.node.object && path.node.object.property && path.node.object.property.name === 'CODES'
      ) {
        path.replaceWith(t.stringLiteral(code));
      }
    },
  },
};
};

eslint:
globals: {
CODES: false,
}

Использование: (в любой части кода):
export default {
 [CODES.DAI]: 'red',
 [CODES.SAI]: 'blut',
}
или
{swAssets[CODES.SAI]?.quantity > 0 &&
          <DaiMigrationWr>
            <DaiMigration/>
          </DaiMigrationWr>
        }

Профит в том, что эти CODES используются постоянно, и мне таким образом не нужно делать постоянно import в каждом файле
источник

К

Константин in javascript_ru
ска.
для этого переменные окружения и придумали
источник