ale*_*234 6 javascript jquery node.js browserify pug
我正在尝试使用Node构建一个演示应用程序,并且我一直收到Uncaught TypeError:尝试使用Nutrionix NodeJS客户端库时,fs.readdirSync不是函数错误(https://github.com/nutritionix/nodejs-client-库)和Browserify.
我正在遵循本教程http://www.sitepoint.com/getting-started-browserify/直到使用Browserify输出部分,而不是使用Underscore和为main.js提供的代码,我正在使用Nutritionix NodeJS客户端库和main.js中的以下代码:
var NutritionixClient = require('nutritionix');
var nutritionix = new NutritionixClient({
appId: '7c710fbd',
appKey: 'a2f106128aa4b2ab81fd783fca5bf0ee'
// debug: true, // defaults to false
});
Run Code Online (Sandbox Code Playgroud)
我使用Jade的HTML如下:
doctype html
html
head
title= title
link(rel='stylesheet', href='/stylesheets/style.css')
body
block content
script(src='javascripts/nutri.js')
script(src='javascripts/main.js')
Run Code Online (Sandbox Code Playgroud)
我在命令行中使用以下命令来构建一个使用Nutritionix的新JavaScript文件:
browserify public/javascripts/main.js -o public/javascripts/nutri.js
Run Code Online (Sandbox Code Playgroud)
当我在本地运行时,在控制台中,我得到Uncaught TypeError:fs.readdirSync不是nutri.js第465行中的函数,这是Browserify生成的文件.该行是以下函数中的第四行:
function readDirp(path, excludeList) {
var lib = {};
var expand = new Expander(path);
var files = fs.readdirSync(path).map(expand);
files.forEach(function(file){
if (excluded(file.name, excludeList) === false) {
lib[file.name.split('.').shift()] = require(file.location);
}
});
return lib;
}
Run Code Online (Sandbox Code Playgroud)
我不知道为什么我一直收到这个错误.当我浏览我在顶部链接的Browserify教程时,我可以使Browserified文件正常工作.如果我需要更多信息,请告知我们,非常感谢任何帮助.
fs
是一个用于文件系统操作的低级API,你不能像这样浏览它。您必须提供替代品,例如: https: //github.com/mafintosh/browserify-fs。由于您无法从浏览器访问客户端的文件系统,因此browserify-fs
使用 LevelDB 来模拟文件系统。
归档时间: |
|
查看次数: |
11916 次 |
最近记录: |