Size: a a a

Angular - русскоговорящее сообщество

2020 February 05

VA

Veaceslav Artiom in Angular - русскоговорящее сообщество
Привет, они там работу с lazy поменяли. Если я конечно правильно понял проблему.
источник

B

Bohdan in Angular - русскоговорящее сообщество
А как тогда быть?
источник

VL

Vladimir Luvolunov in Angular - русскоговорящее сообщество
Виталий
Всем привет.

На проекте 7 ангуляр.
Выполнил команду npm audit fix и обновил @angular-devkit/build-angular с версии ^0.12.1 до версии ^0.13.9 появилась вот такая ошибка.


ERROR in ./src/app/core/routing/routing.module.ts 87:27
Module parse failed: Unexpected token (87:27)
You may need an appropriate loader to handle this file type.
|                 path: 'hackathons',
|                 loadChildren: function () {
>                     return import('@innv/features/my-feature/my-feature.module').then(function (m) { return m.MyFeatureModule; });
|                 }
|             }
ℹ 「wdm」: Failed to compile.


В чём может быть дело? До обновления этот синтаксис работал нормально.
Попробуй убрать обёртку
источник

VL

Vladimir Luvolunov in Angular - русскоговорящее сообщество
Туда вроде промис нужно возвращать, а не функцию
источник

IS

Ivan Stroykin in Angular - русскоговорящее сообщество
У нас есть некий enum, к примеру:
export enum Status {
 PENDING,
 SUCCESS,
 ERROR,
}

и мы хотим использовать его в template. Для этого мы создаем свойство в классе:
publuc status = Status;

Но мы хотим типизировать данное свойство и как это сделать правильно? Потому как данная конструкция не совсем правильна, так как typeof возвращает строку которая указывает на тип операнда
public status: typeof Status = Status;
источник

SK

Sergey Khrolenok in Angular - русскоговорящее сообщество
publuc status = Status; - сделав так у вас уже status типа Status должен быть
источник

В

Виталий in Angular - русскоговорящее сообщество
Vladimir Luvolunov
Попробуй убрать обёртку
Какую обёртку?
источник

SK

Sergey Khrolenok in Angular - русскоговорящее сообщество
как и

public value = 5; value стало типом number
источник

IS

Ivan Stroykin in Angular - русскоговорящее сообщество
Sergey Khrolenok
publuc status = Status; - сделав так у вас уже status типа Status должен быть
Ну давайте нигде не будем писать типы и вернемся на JS)
источник

SK

Sergey Khrolenok in Angular - русскоговорящее сообщество
а вру
источник

SK

Sergey Khrolenok in Angular - русскоговорящее сообщество
вы какой результат хотите получить в итоге
источник

SK

Sergey Khrolenok in Angular - русскоговорящее сообщество
типы везде писать необязательно они неявно могут быть
источник

IS

Ivan Stroykin in Angular - русскоговорящее сообщество
я вам про Фому вы мне про Ерёму)

public status = Status; работает прекрасно и мы можем использовать перечисления в шаблоне. Но мы не типизировали данное свойство что скажется на многих факторах для нас, кроме работоспособности. Это понятно. Нужно обозначить тип. Единственный рабочий вариант, который был найден, это: public status: typeof Status = Status; но это не совсем корректно
источник

B

Bretbas in Angular - русскоговорящее сообщество
Yehór Kashperskyi
@Bretbas что думаешь на этот счёт?
это никак не противоречит моим словам
источник

YK

Yehór Kashperskyi in Angular - русскоговорящее сообщество
Bretbas
это никак не противоречит моим словам
А доступ к приватным данным?
источник

SK

Sergey Khrolenok in Angular - русскоговорящее сообщество
Ivan Stroykin
я вам про Фому вы мне про Ерёму)

public status = Status; работает прекрасно и мы можем использовать перечисления в шаблоне. Но мы не типизировали данное свойство что скажется на многих факторах для нас, кроме работоспособности. Это понятно. Нужно обозначить тип. Единственный рабочий вариант, который был найден, это: public status: typeof Status = Status; но это не совсем корректно
у вас св-во это словарь сейчас а не один из его вариантов
status это один из вариантов Status, если придерживаться здравого смысла

status: Status = Status.Pending

http://www.typescriptlang.org/play/#code/KYOwrgtgBAQg9nANlA3gKCpqBNYBnAGgywDk40BfNNAY0QEM88oBBVYzAF304C5YEyALwCkAOjIBuStQBu9AE5R6UESGAB3VgAoAlNPpjueTqtGIxuPJKA

пойдет ?
источник

B

Bretbas in Angular - русскоговорящее сообщество
Yehór Kashperskyi
А доступ к приватным данным?
Доступ к приватным данным должен быть осуществлен через акссесоры доступа.
В C# это свойства
где нет свойств, скажем C++/Java —> методы доступа
источник

B

Bretbas in Angular - русскоговорящее сообщество
только так можно поддержать инкапсуляцию членов данных класса
источник

YK

Yehór Kashperskyi in Angular - русскоговорящее сообщество
Bretbas
Доступ к приватным данным должен быть осуществлен через акссесоры доступа.
В C# это свойства
где нет свойств, скажем C++/Java —> методы доступа
Почему должен быть доступ к приватным данным, если это и есть цель инкапсуляции?
источник

B

Bretbas in Angular - русскоговорящее сообщество
и целостность его инварианта
источник