Angular pipes are a good choice for small transformations such as these. This initial value never changes. We routinely initialize attributes this way in standard HTML, and it works just as well for directive and component property initialization. That is reasonable behavior. At least the app doesn’t crash. Try it in the . The two-way binding syntax is really just syntactic sugar for a property binding and an event binding.