我正在尝试使用 browserify 使用google-api-nodejs-client构建客户端应用程序。看起来它内部正在尝试使用 fs 模块读取一些 mime 类型信息,但在浏览器中无法执行此操作。
// Load additional types from node.js community
mime.load(path.join(__dirname, 'types/node.types'));
// Default type
mime.default_type = mime.lookup('bin');
Run Code Online (Sandbox Code Playgroud)
有人用这个API进行客户端开发吗?
javascript google-api node.js browserify google-api-nodejs-client
我正在尝试使用 JS 模块制作简单的页面,该页面将对页面执行某些操作。我需要使用 node.js 的模块,所以我正在学习如何浏览器工作。
我的 HTML:
<!doctype html>
<html>
<head>
<script src="js/bundle.js" type="text/javascript"></script>
</head>
<body>
<p>Hello world!</p>
<script type="text/javascript">
var test = require("./test.js");
test.init();
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
这是我的 JavaScript (test.js):
"use strict";
alert("here1");
var init = function() {
alert("here2");
}
exports.init = init
Run Code Online (Sandbox Code Playgroud)
我正在制作一个捆绑包:
browserify.cmd test.js -o bundle.js
Run Code Online (Sandbox Code Playgroud)
当我试图打开页面时,它显示“here1”但不显示“here2”。在浏览器的控制台中,我看到:
Uncaught ReferenceError: require is not defined index.html:9
Run Code Online (Sandbox Code Playgroud)
任何想法如何使模块的功能(init)正常工作?
我正在使用 gulp + browserify 来使用 ES2015 并响应 jsx。我想添加一些像这样的外部反应组件:DataPicker。
这是第一次在我的项目中添加外部反应组件,所以我不知道 css 也需要导入。
但我没有使用 webpack,我只是使用 gulp。这些是我的 gulp 节点模块:
这是我的 gulpfile:
gulp.task('build', function() {
return browserify('./app.js')
.transform(babelify, { presets: ["es2015", "react"] }
.bundle()
.pipe(source('app.js'))
.pipe(buffer())
.pipe(gulp.dest('./dist'));
});
Run Code Online (Sandbox Code Playgroud)
我发现在 javascript 中使用 import/require css 需要“browserify-css”,所以我添加了“npm install browserify-css”。然后我将转换方法添加到我的 gulpfile 中,如下所示:
gulp.task('build', function() {
return browserify('./app.js')
.transform(babelify, { presets: ["es2015", "react"] }
.transform(require('browserify-css'))
.bundle()
.pipe(source('app.js'))
.pipe(buffer())
.pipe(gulp.dest('./dist'));
});
Run Code Online (Sandbox Code Playgroud)
但它刚刚抛出了这样的错误:
events.js:154, 抛出 er; // 未处理的 'error' 事件,SyntaxError: Unexpected token
我在我的 …
所以我正在建立一个新项目,我想通过npm使用Bourbon来scss.这需要做npm install bourbon,然后在编译时以某种方式将路径传递给node-sass.
我当前的sass脚本如下所示:
node-sass --output-style compressed -o build/css/ scss/
Run Code Online (Sandbox Code Playgroud)
和波旁文档表明,我需要做的是这样的:
require("bourbon").includePaths
Run Code Online (Sandbox Code Playgroud)
但是我如何通过命令行执行此操作?
首先我用的是 gulp
使用 browserify 和 babel 编译我的包
var bundler = browserify(filepath, args)
.plugin(watchify, {ignoreWatch: ['**/node_modules/**', '**/bower_components/**']})
.transform(babelify, {presets: ['es2015', 'react']})
Run Code Online (Sandbox Code Playgroud)
这是我尝试运行命令时得到的结果
SyntaxError: browser/components/table.js: Unexpected token (50:14)
48 | }
49 |
> 50 | handleToggle = () => this.setState({ drawer: !this.state.drawer })
| ^
51 |
52 | status(entry) {
53 | if (entry.status === undefined) {
Run Code Online (Sandbox Code Playgroud)
除了箭头函数之外的所有东西似乎都工作得很好,我不知道我在这里做错了什么。
export default class TableHandler extends Component {
constructor(props) {
super(props)
this.state = {drawer: true}
}
handleToggle = () => this.setState({ drawer: !this.state.drawer …Run Code Online (Sandbox Code Playgroud) 我正在建立一个 Backbone 项目,我Gulp用来运行一些任务。我stdout maxBuffer error在使用Browserifyand运行我的任务时遇到了gulp-compressor。所以,在我的app.js我有以下内容:
var Backbone = require('backbone');
var _ = require('underscore');
var $ = require('jquery/dist/jquery');
Run Code Online (Sandbox Code Playgroud)
然后我编写了一个任务来将所需的库编译成一个文件,我将在我index.html喜欢的<script src="dist/bundle.min.js"></script>文件中使用它,并使用gulp-compressor. 这是任务:
var gulp = require('gulp'),
browserify = require('gulp-browserify'),
compress = require('gulp-compressor'),
rename = require('gulp-rename');
gulp.task('browserify', function() {
gulp.src('app/javascripts/app.js')
.pipe(browserify({
insertGlobals: true,
debug: !gulp.env.production
}))
.pipe(compress())
.pipe(rename('bundle.min.js'))
.pipe(gulp.dest('dist'));
});
Run Code Online (Sandbox Code Playgroud)
但是每次我尝试运行脚本时它都会返回我
Error: Error: stdout maxBuffer exceeded
Run Code Online (Sandbox Code Playgroud)
我怎么能解决这个问题?
我是Node.js的初学者,我正在构建一个Node.js程序,该程序使用"乏味"模块访问和查询Microsoft Azure SQL数据库(请参阅下面的代码)并将数据放到html网页上.我想在浏览器中运行此代码,因此我使用browserify将模块捆绑在一起.但是,在Google Chrome中运行此代码时,会返回以下错误:未定义require.有修复吗?甚至可以在Chrome中使用繁琐的模块吗?如果不可能,我是否需要在Node.js应用程序和网页之间使用中间服务器?
var Connection = require('tedious').Connection;
var config = {
userName: 'hackmatch',
password: 'hackvalley123!',
server: 'hackmatch.database.windows.net',
options: {encrypt: true, database: 'AdventureWorks'}
};
var connection = new Connection(config);
connection.on('connect', function(err) {
// If no error, then good to proceed.
console.log("Connected");
});
var Request = require('tedious').Request;
var TYPES = require('tedious').TYPES;
Run Code Online (Sandbox Code Playgroud)
在此先感谢您的帮助!:)
我对browserify有一些问题,我想捆绑以下 node.js 文件项目upload.js,我修改了以下代码中的文件并在 upload.js 的同一目录中调用文件 upload2.js :
var SketchfabDataApi = require( '../../index' );
var Swagger = require('swagger-client');
var fs = require('fs');
var path = require('path');
var api = new SketchfabDataApi();
function UploadModelBySketchfabdataApi(token,idinputfile) {
//var file = jQuery(idinputfile)[0].files[0];
var file = document.getElementById(idinputfile).files[0]
if (file) {
var fileName = file.name;
}
var fullPathFile = document.getElementById(idinputfile).value;
//var fullPathFile = window.location.protocol + "//" + window.location.host;
//if (window.location.port != "") fullPathFile += ":" + window.location.port + "/";
//fullPathFile = fullPathFile + '/private/' …Run Code Online (Sandbox Code Playgroud) 我们正在尝试浏览我们的节点应用程序
示例文件 (index.js)
module.exports = {
index: () => 'test',
};
Run Code Online (Sandbox Code Playgroud)
浏览器化命令
browserify src/index.js > dist/bundle.js --node
Run Code Online (Sandbox Code Playgroud)
如果我们使用文件来要求和控制台
console.log(require('src/index')); // { index: [Function: index] }
console.log(require('dist/bundle')); // { }
Run Code Online (Sandbox Code Playgroud)
我们的期望是 bundle.js 将导出与 index.js 相同的内容。
谁能指出我们做错了什么或遗漏了什么?
附加信息
~这不是我们的应用程序,这是一个演示问题的示例
我们目前正在将我们的整个应用程序压缩到带有入口点的 AWS Lambda 中,src/index.index目的是只发送 bundle.js 文件并能够拥有入口点bundle.index
包.js
(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){
module.exports = {
index: () => 'test',
};
},{}]},{},[1]);
Run Code Online (Sandbox Code Playgroud) 我有一个通用的"main.js",我想从另一个文件中获取一个类.这是我到目前为止所拥有的
结构体
main.js
/js
/src
menu.js
Run Code Online (Sandbox Code Playgroud)
main.js
// main.js
var React = require('react');
var ReactDOM = require('react-dom');
require('./js/src/menu.js');
function run() {
ReactDOM.render(React.createElement(Menu), document.getElementById('menu'));
}
var loadedStates = ['complete', 'loaded', 'interactive'];
if (loadedStates.includes(document.readyState) && document.body) {
run();
} else {
window.addEventListener('DOMContentLoaded', run, false);
}
Run Code Online (Sandbox Code Playgroud)
menu.js(为简洁而编辑)
//menu.js
var React = require('react');
var ReactDOM = require('react-dom');
var Menu = React.createClass({
render: function() {
//do things
}
});
Run Code Online (Sandbox Code Playgroud)
不幸的是,在最后,我得到了
Uncaught ReferenceError: Menu is not defined
我正在使用browserify将所有内容编译成项目结构中其他地方的bundle.js
browserify ×10
javascript ×6
node.js ×6
gulp ×3
reactjs ×2
aws-lambda ×1
babeljs ×1
bourbon ×1
google-api ×1
node-sass ×1
react-jsx ×1
require ×1
sass ×1
upload ×1