Typescript: Update documentation to mention that --strictNullChecks flag is necessary for --strictPropertyInitialization to have an effect

Created on 24 Apr 2018  ·  3Comments  ·  Source: microsoft/TypeScript

TypeScript Version:
2.7.0 and above.

Search Terms:
strictNullChecks strictPropertyInitialization

Code

class C {
    foo: number;
    bar = "hello";
    baz: boolean;

    constructor() {
        this.foo = 42;
    }
}

Expected behavior:
TS documentation should mention that --strictNullChecks flag is needed for --strictPropertyInitialization one to actually have an effect.
This would properly document the actual code change in this commit :
image
This was clearly mentionned in the corresponding PR description.
Also @mihailik suggested that a warning could also be emitted. Has this been done?

Actual behavior:
This is mentioned nowhere in the documentation.
Documentation for --strictPropertyInitialization is _Ensure non-undefined class properties are initialized in the constructor._.
To determine if a class property is _non-undefined_, --strictNullChecks flag must be turned on.

Playground Link:
http://www.typescriptlang.org/play/#src=class%20C%20%7B%0D%0A%20%20%20%20foo%3A%20number%3B%0D%0A%20%20%20%20bar%20%3D%20%22hello%22%3B%0D%0A%20%20%20%20baz%3A%20boolean%20%7C%20undefined%3B%0D%0A%0D%0A%20%20%20%20constructor()%20%7B%0D%0A%20%20%20%20%20%20%20%20this.foo%20%3D%2042%3B%0D%0A%20%20%20%20%7D%0D%0A%7D%0D%0A%0D%0Aconst%20foo%3A%20string%20%3D%20%22fdsf%22%3B

Related Issues:
I found no existing issue for updating the documentation about this.

Bug Docs Fixed good first issue help wanted

Most helpful comment

Also a PR to update the docs would be welcomed, the handbook is at https://github.com/Microsoft/TypeScript-Handbook

All 3 comments

A PR to warn for use of --strictPropertyInitialization with no --strictNullChecks would be welcomed. The fix should be added in 'verifyCompilerOptions'.

Also a PR to update the docs would be welcomed, the handbook is at https://github.com/Microsoft/TypeScript-Handbook

A PR to warn for use of --strictPropertyInitialization with no --strictNullChecks would be welcomed

@mhegazy I'll make PR for that case.

Was this page helpful?
0 / 5 - 0 ratings