1

onBuildWriteを使用してjsファイルのコンテンツを取得することは可能ですが、ルートhtmlページに値を挿入する方法が必要です。これは可能ですか?たとえば、lessファイルをcssバージョンに交換したいと思います。

4

1 に答える 1

1

node.js で可能です。

var fs = require('fs');
// read html file
var fileContents = fs.readFileSync('index.html', 'utf8');
// replace rel attribute for less file with rel for css
fileContents = fileContents.replace(/stylesheet\/less/gi, 'stylesheet');
// replace file name
fileContents = fileContents.replace(/css\/application.less/gi, 'css/application.css');
// remove less runtime compiler (if needed)
fileContents = fileContents.replace(/<script.*?\bless\b[^"']*?\.js.*?<\/script>/g, '');
// write file back
fs.writeFileSync('index.html', fileContents, 'utf8');

これをビルド スクリプトの一部として追加し、r.js を呼び出すだけです。

于 2012-04-09T06:26:34.717 に答える