mirror of
https://github.com/marko-js/marko.git
synced 2025-12-08 19:26:05 +00:00
create fs read options once
This commit is contained in:
parent
a2962c9d2c
commit
c41b8d99b8
@ -3,6 +3,7 @@ var fs = require('fs');
|
|||||||
var jsonminify = require('jsonminify');
|
var jsonminify = require('jsonminify');
|
||||||
var tagDefFromCode = require('./tag-def-from-code');
|
var tagDefFromCode = require('./tag-def-from-code');
|
||||||
var loader = require('./loader');
|
var loader = require('./loader');
|
||||||
|
var fsReadOptions = { encoding: 'utf8' };
|
||||||
|
|
||||||
function createDefaultTagDef() {
|
function createDefaultTagDef() {
|
||||||
return {
|
return {
|
||||||
@ -62,7 +63,7 @@ module.exports = function scanTagsDir(tagsConfigPath, tagsConfigDirname, dir, ta
|
|||||||
|
|
||||||
if (fs.existsSync(tagFile)) {
|
if (fs.existsSync(tagFile)) {
|
||||||
// marko-tag.json exists in the directory, use that as the tag definition
|
// marko-tag.json exists in the directory, use that as the tag definition
|
||||||
tagDef = JSON.parse(jsonminify(fs.readFileSync(tagFile, {encoding: 'utf8'})));
|
tagDef = JSON.parse(jsonminify(fs.readFileSync(tagFile, fsReadOptions)));
|
||||||
if (!tagDef.renderer && !tagDef.template) {
|
if (!tagDef.renderer && !tagDef.template) {
|
||||||
if (fs.existsSync(rendererFile)) {
|
if (fs.existsSync(rendererFile)) {
|
||||||
tagDef.renderer = rendererFile;
|
tagDef.renderer = rendererFile;
|
||||||
@ -95,7 +96,7 @@ module.exports = function scanTagsDir(tagsConfigPath, tagsConfigDirname, dir, ta
|
|||||||
exTemplateFile = templateFile + ".html";
|
exTemplateFile = templateFile + ".html";
|
||||||
}
|
}
|
||||||
if(exTemplateFile){
|
if(exTemplateFile){
|
||||||
var templateCode = fs.readFileSync(exTemplateFile, {encoding: 'utf8'});
|
var templateCode = fs.readFileSync(exTemplateFile, fsReadOptions);
|
||||||
tagDef = tagDefFromCode.extractTagDef(templateCode);
|
tagDef = tagDefFromCode.extractTagDef(templateCode);
|
||||||
if (!tagDef) {
|
if (!tagDef) {
|
||||||
tagDef = createDefaultTagDef();
|
tagDef = createDefaultTagDef();
|
||||||
@ -106,7 +107,7 @@ module.exports = function scanTagsDir(tagsConfigPath, tagsConfigDirname, dir, ta
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (rendererJSFile) {
|
if (rendererJSFile) {
|
||||||
var rendererCode = fs.readFileSync(rendererJSFile, {encoding: 'utf8'});
|
var rendererCode = fs.readFileSync(rendererJSFile, fsReadOptions);
|
||||||
tagDef = tagDefFromCode.extractTagDef(rendererCode);
|
tagDef = tagDefFromCode.extractTagDef(rendererCode);
|
||||||
if (!tagDef) {
|
if (!tagDef) {
|
||||||
tagDef = createDefaultTagDef();
|
tagDef = createDefaultTagDef();
|
||||||
|
|||||||
@ -1,8 +1,9 @@
|
|||||||
var fs = require('fs');
|
var fs = require('fs');
|
||||||
var jsonminify = require('jsonminify');
|
var jsonminify = require('jsonminify');
|
||||||
|
var fsReadOptions = { encoding: 'utf8' };
|
||||||
|
|
||||||
exports.readTaglib = function (path) {
|
exports.readTaglib = function (path) {
|
||||||
var json = fs.readFileSync(path, 'utf8');
|
var json = fs.readFileSync(path, fsReadOptions);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
var taglibProps = JSON.parse(jsonminify(json));
|
var taglibProps = JSON.parse(jsonminify(json));
|
||||||
|
|||||||
@ -3,6 +3,7 @@ var fs = require('fs');
|
|||||||
var Module = require('module').Module;
|
var Module = require('module').Module;
|
||||||
var markoCompiler = require('../compiler');
|
var markoCompiler = require('../compiler');
|
||||||
var cwd = process.cwd();
|
var cwd = process.cwd();
|
||||||
|
var fsReadOptions = {encoding: 'utf8'};
|
||||||
|
|
||||||
if (process.env.hasOwnProperty('MARKO_HOT_RELOAD')) {
|
if (process.env.hasOwnProperty('MARKO_HOT_RELOAD')) {
|
||||||
require('../hot-reload').enable();
|
require('../hot-reload').enable();
|
||||||
@ -42,14 +43,14 @@ module.exports = function load(templatePath) {
|
|||||||
return require(targetFile);
|
return require(targetFile);
|
||||||
}
|
}
|
||||||
|
|
||||||
var templateSrc = fs.readFileSync(templatePath, {encoding: 'utf8'});
|
var templateSrc = fs.readFileSync(templatePath, fsReadOptions);
|
||||||
var compiledSrc = compiler.compile(templateSrc);
|
var compiledSrc = compiler.compile(templateSrc);
|
||||||
|
|
||||||
// console.log('Compiled code for "' + templatePath + '":\n' + compiledSrc);
|
// console.log('Compiled code for "' + templatePath + '":\n' + compiledSrc);
|
||||||
|
|
||||||
var filename = nodePath.basename(targetFile);
|
var filename = nodePath.basename(targetFile);
|
||||||
var tempFile = nodePath.join(targetDir, '.' + process.pid + '.' + Date.now() + '.' + filename);
|
var tempFile = nodePath.join(targetDir, '.' + process.pid + '.' + Date.now() + '.' + filename);
|
||||||
fs.writeFileSync(tempFile, compiledSrc, {encoding: 'utf8'});
|
fs.writeFileSync(tempFile, compiledSrc, fsReadOptions);
|
||||||
fs.renameSync(tempFile, targetFile);
|
fs.renameSync(tempFile, targetFile);
|
||||||
|
|
||||||
return require(targetFile);
|
return require(targetFile);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user