Делали ли вы так, чтобы у вас был отдельный тайпскрипт файл в вашем ангулярном проекте и чтобы он компилировался в отдельный джаваскрипт файл в каталоге dist при сборке вашего проекта?

|
Содержание:
Разве nestJs это не фреймворк для больших энтерпрайз приложений?
А сейчас известно что юзать вместо ng-deep?
то есть я в родительском пишу класс из дочернего и оно застилизуется?
при чём тут материал?
но ты же прописываешь правило глобально?
Использовали ли вы сервисы ангуляра в автономном-отдельном джаваскрипт файле?
Делали ли вы так, чтобы у вас был отдельный тайпскрипт файл в вашем ангулярном проекте и чтобы он компилировался в отдельный джаваскрипт файл в каталоге dist при сборке вашего проекта?
то есть с запуском сайта ты хочешь определять браузер и если это хром, то запускать воркер?
Что мешает сделать либу на ангуляре?
В либу можно поместить сервис, но как сервис вызвать из javascript файла?
А какой хороший тон тогда?
Скажите пожалуйста, что считается правилом хорошего тона, добавлять точку с запятой в конце вызова функции или нет?
как ты себе представляешь, бэк тебе компоненты пришлет?
xuxicheta 2022-06-26 21:06:42
2022-06-26 21:05:10
Разве nestJs это не фреймворк для больших энтерпрайз приложений?

это фреймворк чтобы задолбаться 🙂

zelikov_daniil 2022-06-26 21:06:56
А сейчас известно что юзать вместо ng-deep?
HostListening 2022-06-26 21:06:57
2022-06-26 21:05:10
Разве nestJs это не фреймворк для больших энтерпрайз приложений?

на скок большихъ?

HostListening 2022-06-26 21:07:10
zelikov_daniil 2022-06-26 21:06:56
А сейчас известно что юзать вместо ng-deep?

классы))

2022-06-26 21:07:43
HostListening 2022-06-26 21:06:57
на скок большихъ?

ну точно не для наших задач)

zelikov_daniil 2022-06-26 21:08:25
HostListening 2022-06-26 21:07:10
классы))

то есть я в родительском пишу класс из дочернего и оно застилизуется?

HostListening 2022-06-26 21:08:50
zelikov_daniil 2022-06-26 21:08:25
то есть я в родительском пишу класс из дочернего и оно застилизуется?

в глобале пишешь класс, который перебивает материал классы

zelikov_daniil 2022-06-26 21:09:13
HostListening 2022-06-26 21:08:50
в глобале пишешь класс, который перебивает материал классы

это как-то не рядом с функционалом ng-deep

HostListening 2022-06-26 21:09:52
zelikov_daniil 2022-06-26 21:09:13
это как-то не рядом с функционалом ng-deep

поч?

zelikov_daniil 2022-06-26 21:10:27
зачем мне стили в глобале для всех компонентов? Может там вообще уж всё писать?
HostListening 2022-06-26 21:11:45
zelikov_daniil 2022-06-26 21:10:27
зачем мне стили в глобале для всех компонентов? Может там вообще уж всё писать?

Так ты не переопределяешь глобально классы. Только создаешь свой класс, от которого можно перебить классы material ui-фрейма, кот используешь. И вешаешь его на свой хтмл элемент

zelikov_daniil 2022-06-26 21:12:12
HostListening 2022-06-26 21:11:45
Так ты не переопределяешь глобально классы. Только создаешь свой класс, от которого можно перебить классы material ui-фрейма, кот используешь. И вешаешь его на свой хтмл элемент

при чём тут материал?

zelikov_daniil 2022-06-26 21:12:47
HostListening 2022-06-26 21:11:45
Так ты не переопределяешь глобально классы. Только создаешь свой класс, от которого можно перебить классы material ui-фрейма, кот используешь. И вешаешь его на свой хтмл элемент

но ты же прописываешь правило глобально? А значит они учавствуют в стартовом бандле?

HostListening 2022-06-26 21:13:36
ну типа
zelikov_daniil 2022-06-26 21:14:47
да и зачем мне иметь портянку в глобальных стилях / кучу файлов на каждый компонент, если я могу сделать то что мне надо точечно где надо через ng-deep, но он депрекатед и я до сих пор не могу найти инфу, что будет ему заменой
Rommaniel 2022-06-26 22:44:09
Использовали ли вы сервисы ангуляра в автономном-отдельном джаваскрипт файле? Идея использовать сервисы ангуляра при создании background service_worker…
Rommaniel 2022-06-26 22:45:25
Делали ли вы так, чтобы у вас был отдельный тайпскрипт файл в вашем ангулярном проекте и чтобы он компилировался в отдельный джаваскрипт файл в каталоге dist при сборке вашего проекта?
zelikov_daniil 2022-06-26 22:47:34
Rommaniel 2022-06-26 22:45:25
Делали ли вы так, чтобы у вас был отдельный тайпскрипт файл в вашем ангулярном проекте и чтобы он компилировался в отдельный джаваскрипт файл в каталоге dist при сборке вашего проекта?

такого не делал. Я могу быть не прав, но мне кажется подобное можно только через подтюн вебпака сделать

zelikov_daniil 2022-06-26 22:47:53
Rommaniel 2022-06-26 22:45:25
Делали ли вы так, чтобы у вас был отдельный тайпскрипт файл в вашем ангулярном проекте и чтобы он компилировался в отдельный джаваскрипт файл в каталоге dist при сборке вашего проекта?

А цель? Бандл уменьшить?)

Rommaniel 2022-06-26 22:51:28
zelikov_daniil 2022-06-26 22:47:53
А цель? Бандл уменьшить?)

Цель — создать файл, который будет играть роль «сервис воркера» в расширении для хрома. В третьей версии манифеста, указывается скрипт, который запускается в бэкграунде… То есть три части: popup — окно, показывающееся при нажатии на кнопку расширения, окно настроек, воркер. Как я вижу это должны быть три отдельные приложения общающиеся через механизмы хрома или условно говоря локальную базу данных — настройки…

Rommaniel 2022-06-26 22:52:37
Вообще погуглив можно найти примеры как писать расширения для хрома на ангуляре, но дальше примеров «хэллов ворлд» я не нашел примеров…
zelikov_daniil 2022-06-26 22:53:03
Rommaniel 2022-06-26 22:51:28
Цель — создать файл, который будет играть роль «сервис воркера» в расширении для хрома. В третьей версии манифеста, указывается скрипт, который запускается в бэкграунде… То есть три части: popup — окно, показывающееся при нажатии на кнопку расширения, окно настроек, воркер. Как я вижу это должны быть три отдельные приложения общающиеся через механизмы хрома или условно говоря локальную базу данных — настройки…

🤯 сложна))

zelikov_daniil 2022-06-26 22:53:54
то есть с запуском сайта ты хочешь определять браузер и если это хром, то запускать воркер? Прости если фигню пишу, но я пытаюсь понять)
zelikov_daniil 2022-06-26 22:54:18
Напиши флоу действий
Rommaniel 2022-06-26 22:56:29
zelikov_daniil 2022-06-26 22:53:54
то есть с запуском сайта ты хочешь определять браузер и если это хром, то запускать воркер? Прости если фигню пишу, но я пытаюсь понять)

Речь идет не о сайте, а о разработке расширения для хром бравзера. Хром решает какая часть должна быть запущена: попап, экран настроек, сервис воркер — то есть бекграундный процесс. Из этих частей состоит расширение для хрома, согласно спецификации разработки расширений версии три от гугла.

zelikov_daniil 2022-06-26 22:57:35
Rommaniel 2022-06-26 22:56:29
Речь идет не о сайте, а о разработке расширения для хром бравзера. Хром решает какая часть должна быть запущена: попап, экран настроек, сервис воркер — то есть бекграундный процесс. Из этих частей состоит расширение для хрома, согласно спецификации разработки расширений версии три от гугла.

аа. уу) не работал с расширениями

Rommaniel 2022-06-26 22:59:19
Попап очень хорошо делается на ангуляре, страница настроек также — это должны быть два независтмых ангуляр проекта или два проекта в одном воркспейсе. Я пока не понимаю, как создать сервис воркер на ангуляре — как сделать скрипт, который будет обычным консольным джаваскрипт файлом, но чтобы в нем можно было использовать богатый набор возможностей ангуляр фреймворка.
Rommaniel 2022-06-26 23:01:24
Самое простое решение — сделать отдельный проект на тайпскрипте… но я подозреваю, что можно как-то это сделать, чтобы это все-таки был ангуляр проект, а не тайпскрипт проект, чтобы можно было проще переиспользовать программный код.
st_adzuki 2022-06-26 23:13:34
Rommaniel 2022-06-26 23:01:24
Самое простое решение — сделать отдельный проект на тайпскрипте… но я подозреваю, что можно как-то это сделать, чтобы это все-таки был ангуляр проект, а не тайпскрипт проект, чтобы можно было проще переиспользовать программный код.

Что мешает сделать либу на ангуляре?) Аля ui kit

Rommaniel 2022-06-26 23:14:37
st_adzuki 2022-06-26 23:13:34
Что мешает сделать либу на ангуляре?) Аля ui kit

Да, можно сделать. Я смотрел пример. То что делает ангуляр из коробки. Он не делает main.js

Rommaniel 2022-06-26 23:16:54
В либу можно поместить сервис, но как сервис вызвать из javascript файла? Ну или из тайпскрипт файла…
st_adzuki 2022-06-26 23:17:00
SergeiVakhrushev 2022-06-26 21:00:44
не совсем корректный вопрос — тут не важно где импортируется, важнее что его использует. Например, если SharedModule используется в лейзи модулях и MatDialogModule тоже и в то же время MatDialogModule используется в app модуле (имею ввиду в компоненте который задекларирован в AppModule), то в идеале создастся shared чанк
PS. SharedModule — bad practise

А какой хороший тон тогда?) просто лично из моего опыта, shared папка в которой модуль волятся, все понятно и интуитивно. Закинул туда пару глупых компонентов, компоненты модалок и тд. Выслушал бы Ваш вариант на замену shared

st_adzuki 2022-06-26 23:18:48
Rommaniel 2022-06-26 23:16:54
В либу можно поместить сервис, но как сервис вызвать из javascript файла? Ну или из тайпскрипт файла…

Да и сервис/компонент/директиву дёрнуть не должно возникать проблем или сложностей

StanShumsky 2022-06-26 23:29:20
Rommaniel 2022-06-26 23:16:54
В либу можно поместить сервис, но как сервис вызвать из javascript файла? Ну или из тайпскрипт файла…

const injector = Injector.create({
providers: [MyService],
});
const myService = injector.get(MyService);

Rommaniel 2022-06-26 23:36:51
Скажите пожалуйста, что считается правилом хорошего тона, добавлять точку с запятой в конце вызова функции или нет? В скала, например можно не добавлять, а в джава это обязательный элемент языка. Я склонен не добавлять, но сам ангуляр когда генерирует код добавляет, хотя точка с запятой не обязательна.
licencetolove 2022-06-26 23:37:41
Rommaniel 2022-06-26 23:36:51
Скажите пожалуйста, что считается правилом хорошего тона, добавлять точку с запятой в конце вызова функции или нет? В скала, например можно не добавлять, а в джава это обязательный элемент языка. Я склонен не добавлять, но сам ангуляр когда генерирует код добавляет, хотя точка с запятой не обязательна.

подключить преттиер и забыть об этом

stanislav_1998 2022-06-26 23:49:38
Всем привет! А подскажите пожалуйста, есть способ в модуль которых загружается с помощью lazy-loading загрузить динамически routes (зафетчить роуты с бека)?
Спасибо! Гугл решений не предлагает)
licencetolove 2022-06-26 23:51:02
stanislav_1998 2022-06-26 23:49:38
Всем привет! А подскажите пожалуйста, есть способ в модуль которых загружается с помощью lazy-loading загрузить динамически routes (зафетчить роуты с бека)?
Спасибо! Гугл решений не предлагает)

как ты себе представляешь, бэк тебе компоненты пришлет?

stanislav_1998 2022-06-26 23:52:10
Нет, мне просто нужно фетчить path)
licencetolove 2022-06-26 23:53:55
stanislav_1998 2022-06-26 23:52:10
Нет, мне просто нужно фетчить path)

ну в теории можешь из роутера взять конфиг, поменять там что надо и ресетнуть конфиг новым конфигом

stanislav_1998 2022-06-26 23:58:08
Зафетчить роуты с бека нет проблем. Сейчас все работает на одном модуле и он достаточно большой. В целях оптимизации нужно разбить этот большой модуль на несколько поменьше.

Но проблема в том что в модуль который загружается с помощью lazy-loading нельзя поменять конфиг роутинга. Работаю только те роуты которые прописаны статически.

В lazy-loading до того как он не прогрузился нет методов таких как resetConfig например, или нельзя добавить роут с помощью this.route.config.

Потому надеюсь что кто-то с таким уже работал)

licencetolove 2022-06-27 00:05:29
stanislav_1998 2022-06-26 23:58:08
Зафетчить роуты с бека нет проблем. Сейчас все работает на одном модуле и он достаточно большой. В целях оптимизации нужно разбить этот большой модуль на несколько поменьше.

Но проблема в том что в модуль который загружается с помощью lazy-loading нельзя поменять конфиг роутинга. Работаю только те роуты которые прописаны статически.

В lazy-loading до того как он не прогрузился нет методов таких как resetConfig например, или нельзя добавить роут с помощью this.route.config.

Потому надеюсь что кто-то с таким уже работал)

https://angular.io/api/router/Route#matcher кажется сюда можно посмотреть

licencetolove 2022-06-27 00:06:21
разрешить навигацию на любой путь, а в гарде например ходить куда надо
licencetolove 2022-06-27 00:06:35
и разрешать\запрещать
stanislav_1998 2022-06-27 00:08:46
больщое спасибо! Натолкнуло на мысли) сейчас буду пробовать)
StanShumsky 2022-06-27 00:21:03
stanislav_1998 2022-06-26 23:58:08
Зафетчить роуты с бека нет проблем. Сейчас все работает на одном модуле и он достаточно большой. В целях оптимизации нужно разбить этот большой модуль на несколько поменьше.

Но проблема в том что в модуль который загружается с помощью lazy-loading нельзя поменять конфиг роутинга. Работаю только те роуты которые прописаны статически.

В lazy-loading до того как он не прогрузился нет методов таких как resetConfig например, или нельзя добавить роут с помощью this.route.config.

Потому надеюсь что кто-то с таким уже работал)

Динамические роуты можно через фабрику добавлять в lazymodule

StanShumsky 2022-06-27 00:24:57
stanislav_1998 2022-06-26 23:58:08
Зафетчить роуты с бека нет проблем. Сейчас все работает на одном модуле и он достаточно большой. В целях оптимизации нужно разбить этот большой модуль на несколько поменьше.

Но проблема в том что в модуль который загружается с помощью lazy-loading нельзя поменять конфиг роутинга. Работаю только те роуты которые прописаны статически.

В lazy-loading до того как он не прогрузился нет методов таких как resetConfig например, или нельзя добавить роут с помощью this.route.config.

Потому надеюсь что кто-то с таким уже работал)

https://awstip.com/dynamic-routing-on-module-load-of-an-angular-application-fb0d63451a55

Dynamic routing on module load of an Angular ApplicationMedium
In this article we will take simple scenario to learn more about routing, dependency injection, making use of useFactory for providing…
SergeiVakhrushev 2022-06-27 00:27:42
st_adzuki 2022-06-26 23:17:00
А какой хороший тон тогда?) просто лично из моего опыта, shared папка в которой модуль волятся, все понятно и интуитивно. Закинул туда пару глупых компонентов, компоненты модалок и тд. Выслушал бы Ваш вариант на замену shared

Со временем это превращается в склад всего и вся. Сперва смарт компоненты, потом и сервисы может кто то положить.
У нас на текущем проекте это так, сейчас избавляемся, т.к. все импорты которые попадают неявно делают разбивку на чанки непредсказуемой.
Лично я, да и не только я, предпочитаю более мелкие модули (каждый реюзабельный компонент имеет свой модуль).

stanislav_1998 2022-06-27 00:27:57
Большое спасибо! Я весь инет облазил и так и не смог найти что то подобное! Очень признателен за информацию!!
st_adzuki 2022-06-27 00:34:51
SergeiVakhrushev 2022-06-27 00:27:42
Со временем это превращается в склад всего и вся. Сперва смарт компоненты, потом и сервисы может кто то положить.
У нас на текущем проекте это так, сейчас избавляемся, т.к. все импорты которые попадают неявно делают разбивку на чанки непредсказуемой.
Лично я, да и не только я, предпочитаю более мелкие модули (каждый реюзабельный компонент имеет свой модуль).

У меня на проекте в shared только шаренные директивы и компоненты, сервисы валяются в core. К слову В новом ангуляре насколько я помню сделали возможным использовать компонент без модуля, просто в декораторе описываются всевозможные инструкции

|