Size: a a a

2020 September 20

M

Max in Svelte [svelt]
˸̧̨ ͅBlack Akula˸̧̨ ͅ ̤ ̬̪
Ну так в этом же и суть ТС (у вас, наверное, implicit any отключён, просто)
У меня вообще Dart сейчас)
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in Svelte [svelt]
Константин
короче, я говорил про объявление {1: "123"}
да... но я ведь про семантику говорил - у такого объекта length не возьмёшь... Так, стоп. С чего всё началось? Марк нашёл, почему у него ошибка?
источник

AP

Alexander Ponomarev in Svelte [svelt]
всегда возможна ошибка в регэкспе
источник

МТ

Марк Танащук... in Svelte [svelt]
˸̧̨ ͅBlack Akula˸̧̨ ͅ ̤ ̬̪
да... но я ведь про семантику говорил - у такого объекта length не возьмёшь... Так, стоп. С чего всё началось? Марк нашёл, почему у него ошибка?
Мб я перепутал с чем то
источник

M

Max in Svelte [svelt]
˸̧̨ ͅBlack Akula˸̧̨ ͅ ̤ ̬̪
да... но я ведь про семантику говорил - у такого объекта length не возьмёшь... Так, стоп. С чего всё началось? Марк нашёл, почему у него ошибка?
Length магически отрастает, если в цепочке прототипов есть Array
источник

МТ

Марк Танащук... in Svelte [svelt]
Alexander Ponomarev
всегда возможна ошибка в регэкспе
Баян
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Гайз, опять оффтоп пошел
источник

/

/dev/null in Svelte [svelt]
Здравствуйте, где можно задать вопрос, касаемо чисто темы rollup?
источник

W

Whatislove in Svelte [svelt]
/dev/null
Здравствуйте, где можно задать вопрос, касаемо чисто темы rollup?
Мне помогли как раз тут)
источник

/

/dev/null in Svelte [svelt]
хм
источник

/

/dev/null in Svelte [svelt]
Попытка — не пытка, да
источник

/

/dev/null in Svelte [svelt]
Всё это про NodeJS и к клиенту отношения не имеет)

1. Есть абсолютно голый проект, ставлю туда rollup, забиваю базовый конфиг — собирает, нормально
2.1. Есть уже написанный код, но проблема в том, что там стандартная конструкция была написана module.exports = . Соответственно rollup такое не кушает через import ... from "...";
2.2. Ставлю плагин @rollup/plugin-commonjs, подключаю его, всё работает
3.1. Теперь необходимо установить alias на папку со всякими хелперами
3.2. Ставлю плагин @rollup/plugin-alias
3.3. Прописываю туда алиасы, всё классно, всё работает, всё собирается

Казалось бы, всё классно

4.1. Теперь мне нужен typescript
4.2. Ставлю плагин @rollup/plugin-typescript
4.3. Пишу тестовый файл хелпера, который экспортирует одну функцию специально через конструкцию module.exports =, пытаюсь подключить файл (без алиаса), тут же получаю ошибку

(!) Plugin typescript: @rollup/plugin-typescript TS2306: File '../src/helpers/helper.ts' is not a module.

Я думаю, ладно, сделаем по доке:

rollupTypescriptPlugin( { module: "CommonJS" } ),
commonjs( { extensions: [ ".js", ".ts" ] } ),


Но так он вообще не собирает, просто виснет и всё...
4.4. Ладно, импортнуть cjs не вышло, значит переписывает хелпер на export default. Работает
4.5. Теперь мне нужно снова сделать alias. Т.к. плагин уже подключен, то остаётся только прописать алиас (раньше он работал), а теперь TS ругается на путь (говорит, что такого модуля не существует и вообще я дурак) и не собирает, есесна, ничего

Так вот, проблемы:
1. Как импортнуть готовую cjs либу?
2. Как подключить плагин @rollup/plugin-alias?
источник

/

/dev/null in Svelte [svelt]
В тему свелта, кстати
На обычном шаблоне, но конвёртнутом под TS (https://github.com/sveltejs/template) ошибка с alias также актуальна
Т.е., если поставить плагин и попытаться его использовать, допустим, в  секции <script lang = "ts"></script>, то TS также ругается на то, что такого пути он найти не может
источник

AP

Alexander Ponomarev in Svelte [svelt]
в тсконфиге надо ещё раз дублировать алиасы в paths
источник

AP

Alexander Ponomarev in Svelte [svelt]
источник

AP

Alexander Ponomarev in Svelte [svelt]
cjs либу тс импортирует без проблем, может к либе нет тайпингов?
источник

AP

Alexander Ponomarev in Svelte [svelt]
насколько я помню на тсе можно юзать хармони импорт/экспорт а тс их сам переделает в коммонжс, если module проставлен в коммонжс
источник

AP

Alexander Ponomarev in Svelte [svelt]
либо там пишется
export = {
  a,
  b,
};
источник

/

/dev/null in Svelte [svelt]
Alexander Ponomarev
в тсконфиге надо ещё раз дублировать алиасы в paths
во, это спасибо, я попробую
источник

/

/dev/null in Svelte [svelt]
я только начинаю ковырять это всё)
источник