The vue.js documentation has this as an example:
props: ['initialCounter'],
data: function () {
  return { counter: this.initialCounter }
}
However, initialCounter works in my template, but counter does not.
What am I doing wrong?
Here's the full code:
<update-counter initialCounter="1" inline-template>
    <div>
        <div class="panel panel-default">
            <div class="panel-heading">My Counter @{{ initialCounter }}</div>
Edit: I narrowed down my issue. If I pass a variable like this it works:
<update-partner :initial-counter="1" inline-template>
But if I pass an object, it doesn't work:
<update-partner :initial-counter="users" inline-template>
When I pass that object, initialCounter works in my template, but counter does not.
When I pass an integer, both variables work.
What do I need to do differently when I pass an object?

initialCounterbeing populated asynchronously in parent component?