title: ${variable} doesnt get replaced when html template is read as a string from a file in node app
body: <p>I am using .setContent() method of puppeteer to set the content of a page.
  I am reading a png image as:</p>
  <pre><code>var image = fs.readFileSync('some_image.png'); // image is a buffer object 
  </code></pre>
  <p>The below code works as image template variable is replaced by its value in htmlstring string:</p>
  <p>main.js</p>
  <pre><code>var image = fs.readFileSync('some_image.png');
  const htmlString = `
  &lt;html&gt;
  &lt;head&gt;&lt;meta http-equiv=Content-Type content=&quot;text/html; charset=UTF-8&quot;&gt;
  &lt;/head&gt;
  &lt;body&gt;
  &lt;div&gt;
  &lt;img src=&quot;data:image/png;base64,${image.toString('base64')}&quot; width=960 height=750&gt;&lt;/div&gt;
  &lt;/body&gt;
  &lt;/html&gt;`;
  await page.setContent(htmlString);
  </code></pre>
  <p>Now I dont want to declare htmlString variable in my main.js instead want to keep that in a separate file and somehow use that in my main.js</p>
  <p>For this I tried</p>
  <p>creating a pages.html file with the html content as below</p>
  <p>pages.html</p>
  <pre><code>&lt;html&gt;
  &lt;head&gt;&lt;meta http-equiv=Content-Type content=&quot;text/html; charset=UTF-8&quot;&gt;
  &lt;/head&gt;
  &lt;body&gt;
  &lt;div&gt;
  &lt;img src=&quot;data:image/png;base64,${image.toString('base64')}&quot; width=960 height=750&gt;&lt;/div&gt;
  &lt;/body&gt;
  &lt;/html&gt;
  </code></pre>
  <p>in my main.js</p>
  <pre><code>var image = fs.readFileSync('some_image.png');
  var htmlfromfile = fs.readFileSync('pages.html').toString();
  </code></pre>
  <p>this does not work and my img tag still has &quot;data:image/png;base64,${image.toString('base64')}&quot; and not the buffer value of image in it. How do i get this working ?</p>