AngularJS expression redundancy in templates
I think the way you've chosen to do it here is probably the best option.  The other reasonable options, as far as I can see, are:


moving the h3 content string and button class out of the template, and setting them in code based on isUserConnected.  So the HTML for the header would be e.g.:

&lt;h3 class="fb-login-prompt" unselectable="on"&gt;{{loginPromptHeader}}&lt;/h3&gt;


This has the disadvantage of having presentation concerns moved out of the template and into the code somewhere.
wrapping the entire HTML in an if-else statement, with each branch repeating all of the HTML structure that doesn't change.  The disadvantage of this is that it involves much more of a maintenance overhead from repeated code.  It wouldn't surprise me if this option was also more processor-intensive, because it involves more DOM elements being created/removed each time.