Size: a a a

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

2018 March 28

МД

Михаил Девятов in AngularPiter - русскоговорящее сообщество
Angular CLI: 1.6.1
Node: 8.9.4
OS: win32 x64
Angular: 5.2.9
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, platform-server, router

@angular/cdk: 5.0.1
@angular/cli: 1.6.1
@angular/flex-layout: 2.0.0-beta.12
@angular/material: 5.0.1
@angular-devkit/build-optimizer: 0.0.42
@angular-devkit/schematics: 0.0.52
@ngtools/json-schema: 1.1.0
@ngtools/webpack: 1.9.1
@schematics/angular: 0.1.17
typescript: 2.4.2
webpack-bundle-analyzer: 2.11.1
webpack: 3.10.0
источник

Вキ

Вертихвост キバ in AngularPiter - русскоговорящее сообщество
Dmitry Teplov
Такая телега имеет место быть, как думаете?
export function checkType(type: string) {
 return (target: object, property: string) => {
   let _val = target[property];
   delete target[property];

   Object.defineProperty(target, property, {
     set: function set(newVal) {
       const newValType = typeof newVal;
       if (newValType !== type) {
         throw new TypeError(`Invalid ${property} type (${newValType}). Should be ${type}.`);
       }
       _val = newVal;
     },
     get: function get() {
       return _val;
     },
     enumerable: true,
     configurable: true,
   });
 };
}

...
@Input() @checkType('number') public defautDate: number;
А для чего? При сборке совпадение типов проверяется
источник

DT

Dmitry Teplov in AngularPiter - русскоговорящее сообщество
Вертихвост キバ
А для чего? При сборке совпадение типов проверяется
ну с ng serve -aot съедает такое
[defautDate]="'string'"
источник

АД

Александр Духовняк in AngularPiter - русскоговорящее сообщество
Dmitry Teplov
Такая телега имеет место быть, как думаете?
export function checkType(type: string) {
 return (target: object, property: string) => {
   let _val = target[property];
   delete target[property];

   Object.defineProperty(target, property, {
     set: function set(newVal) {
       const newValType = typeof newVal;
       if (newValType !== type) {
         throw new TypeError(`Invalid ${property} type (${newValType}). Should be ${type}.`);
       }
       _val = newVal;
     },
     get: function get() {
       return _val;
     },
     enumerable: true,
     configurable: true,
   });
 };
}

...
@Input() @checkType('number') public defautDate: number;
Я бы гист сделал, а то кровоточит из глаз)
источник

DT

Dmitry Teplov in AngularPiter - русскоговорящее сообщество
Александр Духовняк
Я бы гист сделал, а то кровоточит из глаз)
источник

Вキ

Вертихвост キバ in AngularPiter - русскоговорящее сообщество
Dmitry Teplov
ну с ng serve -aot съедает такое
[defautDate]="'string'"
Да, прошу прощения, вы правы)
источник

DT

Dmitry Teplov in AngularPiter - русскоговорящее сообщество
Вертихвост キバ
Да, прошу прощения, вы правы)
ну и в рантайме, когда этот параметр будет браться из ответа сервера, можно накосячить
источник

DT

Dmitry Teplov in AngularPiter - русскоговорящее сообщество
так то я бы сделал как обычно - parseInt -> isNaN, но раз уж декораторы подъехали, то можно и попробовать
источник

АД

Александр Духовняк in AngularPiter - русскоговорящее сообщество
@tplk6 может не совсем по теме вопроса, но возможно можно reflect metadata для этого заюзать.

Типо такого
https://blog.rsuter.com/angular-2-typescript-property-decorator-that-converts-input-values-to-the-correct-type/
источник

АД

Александр Духовняк in AngularPiter - русскоговорящее сообщество
Я с телефон, так что не удобно писать и смотреть. Извиняюсь если не так понял)
источник

DT

Dmitry Teplov in AngularPiter - русскоговорящее сообщество
Александр Духовняк
Я с телефон, так что не удобно писать и смотреть. Извиняюсь если не так понял)
да вроде так
задача была кидать ошибку, если забыли поставить скобки (<cmp defaultDate="123"></cmp>) или не забыли, но прокинули случайно строку.
можно и конвертер сделать и кидать ошибку, если isNaN
источник

АД

Александр Духовняк in AngularPiter - русскоговорящее сообщество
Dmitry Teplov
да вроде так
задача была кидать ошибку, если забыли поставить скобки (<cmp defaultDate="123"></cmp>) или не забыли, но прокинули случайно строку.
можно и конвертер сделать и кидать ошибку, если isNaN
Мой посыл был присмотреться к reflect в целом)

Если поможет хорошо, а если нет, то лишним не будет
источник

DT

Dmitry Teplov in AngularPiter - русскоговорящее сообщество
Александр Духовняк
Мой посыл был присмотреться к reflect в целом)

Если поможет хорошо, а если нет, то лишним не будет
ага, благодарю, посмотрю
источник

АД

Александр Духовняк in AngularPiter - русскоговорящее сообщество
Михаил Девятов
Angular CLI: 1.6.1
Node: 8.9.4
OS: win32 x64
Angular: 5.2.9
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, platform-server, router

@angular/cdk: 5.0.1
@angular/cli: 1.6.1
@angular/flex-layout: 2.0.0-beta.12
@angular/material: 5.0.1
@angular-devkit/build-optimizer: 0.0.42
@angular-devkit/schematics: 0.0.52
@ngtools/json-schema: 1.1.0
@ngtools/webpack: 1.9.1
@schematics/angular: 0.1.17
typescript: 2.4.2
webpack-bundle-analyzer: 2.11.1
webpack: 3.10.0
А они там есть? После билда. Что в assets лежит и в какой структуре?
источник

МД

Михаил Девятов in AngularPiter - русскоговорящее сообщество
даа все там есть это вообще покупной темплейт
источник

МД

Михаил Девятов in AngularPiter - русскоговорящее сообщество
я его под себя хотел сделать.
источник

AI

Alexander Ignatov in AngularPiter - русскоговорящее сообщество
Пытаюсь литературу по ангуляру на инглише читать, но есть специфичные слова, хз как их на русский перевести. Посоветуйте переводчик, ресурс или ещё что-то полезное.
источник

K

Katerina in AngularPiter - русскоговорящее сообщество
какие. например, слова?
источник

AI

Alexander Ignatov in AngularPiter - русскоговорящее сообщество
Из того что сейчас вспомню, expose например. Просто есть такая боль, но обычно непонятные слова пропускаю, и читаю дальше
источник

K

Katerina in AngularPiter - русскоговорящее сообщество
ну универсальног опереводчика припомнить не могу
источник