Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I require a html template with Browserify

I'm trying to figure out an easy way to require a html template in the script and then run browserify from the CLI.

Say I want to grab a template and append it to the body.

//index.js

var template = require('./template.html');
document.body.appendChild(template);

and

<!-- template.html -->
<p>Woooo!</p>

Then using the CLI to wrap it all up in Browserify.

browserify index.js > build.js

When loading an index.html template in the browser that references build.js I get this error in the console:

Uncaught SyntaxError: Unexpected token <

which is referencing

....

},{}],3:[function(require,module,exports){
<div class="slide">
    <h2 data-slide-title></h2>
    <div data-slide-copy></div>
</div>
},{}]},{},[1])
like image 837
Denim Demon Avatar asked Jun 18 '14 02:06

Denim Demon


Video Answer


2 Answers

Good option is jstify.

browserify ./app/main.js -t jstify > static/bundle.js

For more information take a look this link

like image 173
Stanislav Ostapenko Avatar answered Nov 10 '22 11:11

Stanislav Ostapenko


Use: https://github.com/substack/brfs

1

npm install brfs

2

var fs = require('fs');
var html = fs.readFileSync(__dirname + '/robot.html', 'utf8');
console.log(html);

3

browserify -t brfs example/main.js > bundle.js
like image 24
lavrton Avatar answered Nov 10 '22 12:11

lavrton