web-dev-qa-db-ja.com

文字列としてファイルが必要

私はnode + expressを使用していますが、どのファイルを文字列としてインポートできるのか疑問に思っています。 txtファイルがあり、それを変数にロードしたいだけだとしましょう。

var string = require("words.txt");

私は反対です

modules.exports = function(){

    var string = "whatever";

    return string;

}
76
ThomasReggi

(少数の)特定の拡張機能の場合、独自の require.extensions ハンドラー:

var fs = require('fs');

require.extensions['.txt'] = function (module, filename) {
    module.exports = fs.readFileSync(filename, 'utf8');
};

var words = require("./words.txt");

console.log(typeof words); // string

それ以外の場合は、 fs.readFile with require.resolve

var fs = require('fs');

function readModuleFile(path, callback) {
    try {
        var filename = require.resolve(path);
        fs.readFile(filename, 'utf8', callback);
    } catch (e) {
        callback(e);
    }
}

readModuleFile('./words.txt', function (err, words) {
    console.log(words);
});
104

CSSファイルを文字列に読み込むには、このコードを使用します。 .txt

const fs = require('fs')
const path = require('path')

const css = fs.readFileSync(path.resolve(__dirname, 'email.css'), 'utf8')

ES6:

import fs from 'fs'
import path from 'path'

let css = fs.readFileSync(path.resolve(__dirname, 'email.css'), 'utf8')
15
Max Ma

readFileモジュールのfilesystem関数を使用する必要があります。

http://nodejs.org/docs/v0.3.1/api/fs.html#fs.readFile

6
Simon Boudrias

node.jsとTypeScriptの両方で.jsonファイルを要求できます。これは、テキストのシリアル化に適したrequired()をサポートする唯一の形式です。あなたは https://github.com/cancerberoSgx/fs-to-json のように、コンパイル時ツールを使用してファイルをjsonにパックできます。

0
cancerbero