title: Require one from two fields using Angular 2
body: <p>I'm trying to create a contact form. The form looks like this:</p>
  
  <pre><code>&lt;form novalidate [formGroup]="contact" (ngSubmit)="send()"&gt;
    &lt;p&gt;
      &lt;label&gt;Name
        &lt;br&gt;
        &lt;input type="text" class="input" value="" formControlName="name"&gt;
        &lt;span class="error"&gt;Enter your name&lt;/span&gt;
      &lt;/label&gt;
    &lt;/p&gt;
    &lt;p&gt;
      &lt;label&gt;E-mail
        &lt;br&gt;
        &lt;input type="email" class="input" value="" formControlName="email"&gt;
        &lt;span class="error"&gt;It looks like this email is invalid&lt;/span&gt;
      &lt;/label&gt;
    &lt;/p&gt;
    &lt;p&gt;
      &lt;label&gt;Phone
        &lt;br&gt;
        &lt;input type="text" class="input" value="" formControlName="telefone"&gt;
        &lt;span class="error"&gt;It looks like this phone number is invalid&lt;/span&gt;
      &lt;/label&gt;
    &lt;/p&gt;
    &lt;p&gt;
      &lt;label&gt;Message
        &lt;br&gt;
        &lt;textarea type="text" class="input" value="" formControlName="message"&gt;&lt;/textarea&gt;
        &lt;span class="error"&gt;The message can't be empty&lt;/span&gt;
      &lt;/label&gt;
    &lt;/p&gt;
    &lt;p class="submit"&gt;
      &lt;input type="submit" name="submit" class="bt" value="Send"&gt;
    &lt;/p&gt;
  &lt;/form&gt;
  </code></pre>
  
  <p>In this form only the message and the name and email or the phone number fields should be required. </p>
  
  <p>I'm using a <code>formBuilder</code> class, so here's the TypeScript code:</p>
  
  <pre><code>this.contact = this.formBuilder.group({
    name: ['', Validators.required],
    email: ['', Validators.compose([/*Use custom validador??*/])],
    phone: ['', Validators.compose([/*Use custom validador??*/]],
    message: ['', Validators.required]
  });
  </code></pre>
  
  <p>I tried using custom validators as a solution, but I could not figure out a solution. Any suggestions?</p>