[英]Example of browserify implementation with Node.JS, Express, and EJS
[英]node js browserify implementation
我想在瀏覽器上使用我的自定義模塊。 例如我有一個AppConfig.js模塊
'use strict'
var fs, configurationFile;
configurationFile = './configs/appConfig.json';
fs = require('fs');
var AppConfig = function(){
function getMongoDbConnectionString()
{
var configuration = JSON.parse(
fs.readFileSync(configurationFile)
);
var connectionString= configuration.mongodbConnectionString;
return connectionString;
}
function getDistanceCondition()
{
var configuration = JSON.parse(
fs.readFileSync(configurationFile)
);
var distance= configuration.distanceBetweenTwoArmatures;
return distance;
}
return {
getMongoDbConnectionString : getMongoDbConnectionString,
getDistanceCondition:getDistanceCondition
};
}
module.exports = AppConfig;
我想在瀏覽器中使用此模塊。 為此,我安裝了browserify模塊。
npm install -g browserify
然后轉到應用程序目錄並運行此命令
browserify -r ./modules/AppConfig.js:AppConfig> ./public/javascripts/bundle.js
然后我將這一行添加到我的html文件中。
<script src="/javascripts/bundle.js"></script>
現在我想在我的javascritp函數上使用此模塊。
var Configuration = require('AppConfig');
var configuration = new Configuration();
var connectionString= configuration.getDistanceCondition();
我調用getDistanceCondition()函數,但是ı報錯:
未捕獲(承諾)TypeError:fs.readFileSync不是函數(…)
我該如何解決這個問題? 你能給我一些信息嗎?
fs
不能被瀏覽。 但是,由於您的配置文件是JSON,並且僅使用fs
讀取該文件,因此可以使用require()
替換它:
var configuration = require(configurationFile);
利用附加優勢,Browserify會將您的配置文件添加到捆綁軟件中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.