Описание тега strictnullchecks

5 ответов

Машинопись и фильтр Boolean

Рассмотрим следующий код с strictNullChecks включенный: var a: (number | null)[] = [0, 1, 2, 3, null, 4, 5, 6]; var b: { value: number; }[] = a.map(x => x != null && { value: x }).filter(Boolean); Не удается скомпилировать из-за: Type '(f…
04 дек '17 в 11:43
0 ответов

Есть ли сокращение для проверки выражения ниже в JavaScript

if(obj.city && obj.city.pin && obj.city.pin.state) { //do something } obj?.city?.pin?.state дает ошибку 'Unexpected token .' в JavaScript
01 ноя '17 в 13:04
2 ответа

TypeScript: убедитесь, что обязательные свойства аргумента определены, прежде чем передать его в вызов функции

Это не компилируется ( детская площадка): function myFunction(params: { a: Date, b?: Date }) { if (params.b) { myFunctionInternal(params); // ERROR! } } function myFunctionInternal(params: { a: Date, b: Date }) {} Есть ли более элегантный обходной п…
25 июл '18 в 14:30
2 ответа

TypeScript со строгой проверкой нуля - как насчет доступа к массиву?

В TypeScript, если включена строгая проверка нуля, я ожидаю, что компилятор не позволит мне назначить null или же undefined значения переменной, если она не допускает null, Однако доступ к массиву позволяет обойти эту проверку. Пример: let a: string…
08 дек '17 в 17:27
0 ответов

Соответствуют ли настройки в tsconfig модуля NPM касательно настроек проекта, использующего этот модуль?

Я использую модуль npm, который в основном просто модель больших данных. В этом модуле для strictNullChecks установлено значение false, но в моем проекте для strictNullChecks установлено значение true. При попытке присвоить значение null переменной,…
20 дек '18 в 21:27
7 ответов

Почему TypeScript выводит тип 'never' при уменьшении массива с помощью concat?

Код говорит лучше языка, поэтому: ['a', 'b', 'c'].reduce((accumulator, value) => accumulator.concat(value), []); Код очень глупый и возвращает скопированный массив... TS жалуется на аргумент concat: TS2345: Аргумент типа 'string' не может быть на…
1 ответ

Как реализовать строгие проверки в Angular 4

Я пытался реализовать strictNullChecks в угловых 4 приложения. Я только что добавил "strictNullChecks": true в tsconfig.json Когда я запускаю приложение ng serve Я получил это ниже ошибки. ERROR in [at-loader] ./node_modules/@angular/forms/src/model…
04 июл '17 в 10:26
1 ответ

createStore со строгой машинописью

import { createStore } from "redux"; import * as storage from "redux-storage"; const reducer = storage.reducer((state, action) => ({})); const store = createStore(reducer, {}); При использовании вышеуказанного кода с strict включен для машинописи…
20 апр '18 в 13:07
1 ответ

Что я должен вернуть, если объект не найден в TypeScript с использованием строгого режима?

Вот фрагмент кода в машинописи с strictNullChecks: true getItem(key: string): T { let index: number = this.contains(key); // returns -1 if not found if (index === -1) { return null; // error null is not assignable to type 'T' } return this.map[index…
09 май '18 в 21:21
2 ответа

Как сказать Typescript, что * в этом случае * тип возвращаемого значения функции никогда не бывает нулевым

Я пытаюсь получить машинопись strictNullChecks работая в проекте Angular 5. У меня есть форма: this.signinForm = this.fb.group({ emailAddress: ['', NGValidators.isEmail()], password: ['', Validators.required], rememberMe: false, }); Я могу получить …
28 ноя '17 в 05:36
2 ответа

Typescript Почему тип guard не работает должным образом для массива объектов типа null-able union(strictNullChecks включен)

type Field = {test: {more: number} | null} let fields: Field[] = [{test: {more: 55}}] Transpiler выдает ошибку независимо от типа охранника: if (fields[0].test) { fields[0].test.more = 55 // object is possibly null } Здесь нет ошибки: function f(fie…
17 апр '18 в 11:17
2 ответа

Машинопись: использование Map<> с strictNullChecks

Учитывая следующий простой класс: class Observer { private subscribers: Map&lt;string, Array&lt;((data: any) =&gt; void)&gt;&gt; = new Map(); public subscribe(event: string, callback: (data: any) =&gt; void) { if (!this.subscribers.has(event)) { thi…
2 ответа

Ngrx: свойство "[Symbol.observable]" отсутствует в типе "Store<boolean>" ошибка

Я использую NGRX v4.1.1 в приложении Angular v5 (с "strictNullChecks": trueхотя это не имеет значения). Я вижу ошибку с магазином. Учитывая следующее: showLists: Observable&lt;boolean&gt;; constructor(private store: Store&lt;State&gt;) {} ngOnInit()…
03 янв '18 в 20:51
3 ответа

Typescript с --strictNullCheck - проверять ненулевое значение в отдельном методе

Я с удовольствием с опцией компилятора --strictNullCheck У меня есть этот метод: Мне нужно проверить, не являются ли заголовки пустыми, прежде чем я смогу их использовать. Замечательно Теперь я хотел бы перенести операцию проверки в отдельный метод,…
29 июл '17 в 16:27
0 ответов

Typescript Строгий ноль Проверки объектов с дополнительными ключами

Я представляю strictNullchecks Опция компилятора в нашем Angular проекте и натолкнулась на эту проблему. ошибка TS2345: аргумент типа 'строка | undefined'не может быть назначен параметру типа'string'. replaceTokens(menuItemList: MenuItem[]): MenuIte…
30 май '19 в 12:39
1 ответ

Ошибка TypeScript strictNullChecks, когда это невозможно

Я пытаюсь включить параметр strictNullChecks для моего проекта, но у меня есть довольно любопытная ошибка в следующем фрагменте кода: toasters.forEach((toster: ToasterObject) =&gt; { if (toaster.brandName) { //This line works just fine let y = toast…
01 апр '19 в 17:57
1 ответ

TypeScript: могу ли я проверить, содержит ли тип undefined, даже если strictNullChecks имеет значение false?

У нас была проблема в redux-starter-kit, когда у пользователя библиотеки был отключен strictNullChecks, и один из наших тестов типа был коротким, возвращая типы для другого случая. Этот тест должен возвращать True-Parameter или False-Parameter в зав…
09 окт '19 в 20:46
2 ответа

Typescript strictNullChecks не сужает тип

У меня простой случай, когда strictNullChecks не сужает тип, хотя я явно проверяю undefined. interface WideType { one: { two: number } | undefined; } interface NarrowType { one: { two: number }; } const example = (value: WideType): NarrowType | null…
15 ноя '19 в 11:47
0 ответов

Почему TypeScript позволяет присваивать null в тернарном режиме при strictNullChecks?

Я новичок в TypeScript, но я вижу, как кажется, непоследовательное поведение: я могу присвоить null интерфейсу как часть троичного присваивания, но я получаю сообщение об ошибке, когда делаю это через поток if/else (см. Ниже). Проект настроен на при…
1 ответ

Введите псевдоним из свойства, которое может иметь значение NULL с помощью strictNullChecks

Я использую graphql-codegen/typescript-apollo-angularдля генерации машинописного кода можно использовать в нашем приложении Angular. Мы решили включитьstrictNullChecks единственная проблема заключается в том, что мы используем следующий шаблон для у…