相关疑难解决方法(0)

如何在gulp中使用browserify时向浏览器公开"require"?

当我有一个看起来像这样的文件x.js:

x.js

module.exports = function (n) { return n * 111 }
Run Code Online (Sandbox Code Playgroud)

我从命令行运行browserify,如下所示:

browserify -r ./x.js > bundle.js
Run Code Online (Sandbox Code Playgroud)

我得到一个看起来像这样的输出文件(粗略地):

require=(function e(t,n,r){function ......
./App.jsx":[function(require,module,exports){
module.exports=require('0+DPR/');
},{}]},{},[])
Run Code Online (Sandbox Code Playgroud)

然后在我的浏览器代码中我可以这样做:

<html>
  <head>
    <title>React server rendering example</title>
    <script src="static/bundle.js"></script>
  </head>
  <body>
    Welcome to the React server rendering example. Here is a server-rendered React component:
    <div id="53a442ff8b39d"></div><script>
    var x = require('./x.js');
    console.log(x(3))
</script>  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

我实际上有两个问题:

1)这在浏览器中不起作用我收到错误:"未捕获错误:找不到模块'./x.js'".为什么会这样?

2)我实际上想要使用vinyl-source-stream在gulp中运行它.我已经尝试在我的gulpfile中做这样的事情,但它不起作用.有任何想法吗?我收到错误'require is not defined'

var   gulp = require('gulp'),
  browserify = require('browserify'),
  source = require('vinyl-source-stream');

var b = browserify({
    entries: …
Run Code Online (Sandbox Code Playgroud)

javascript node.js browserify gulp

8
推荐指数
1
解决办法
2万
查看次数

标签 统计

browserify ×1

gulp ×1

javascript ×1

node.js ×1