I hestitate to call this comment that I posted an answer but the OP read it, did as recommended, and got "the behavior I expected when I made the question" so... :)
Generally speaking, if you're trying to get as close to an IDE as possible you should look at YouCompleteMe or CoC completion plugins. Since you obviously have node.js installed CoC is a good choice (and if you don't mind a non-native solution like that it's preferable to YCM for other reasons, too, IMHO). Use in conjuction with an LSP server and you'll have Intellisense level completion (in addition to other solid functionality in the realm of linting and refactoring)...and you'll be cooking with gas. :)
But let me elaborate on some of this.
The Language Server Protocol aka LSP enables communication between code editors and "language servers" that provide sophisticated language-specific features like code completion, refactoring, and syntax highlighting. Basically, this allows you to offload the expensive processing of some code editing functions from your editor (the client) to a dedicated program (the server). This happens through asynchronous operations that result, for the most part, in a seamless experience for the user. Each server, which you can run locally like any other program, supports a single language, in the typical case.
One of the nicer features of CoC is how easy it is to set up and configure. Enabling support of a new language requires a single command. Adding language server support usually requires just copying and pasting some JSON from the CoC wiki.
Finally, I mentioned "Intellisense". This is the name of the very popular intelligent code completion feature found in the Visual Studio Code IDE. It's a very slick form of auto-completion.