node.js - Maven/Spring 与 Browserify : require is not defined

标签 node.js maven npm spring-boot browserify

我正在使用 Eirslett 的 frontend-maven-plugin这是一个 Maven 插件,可以在本地下载 Node 和 NPM。我正在尝试通过该插件使用 Browserify。

我已经使用命令npm install -g browserifynpm install --save-dev browserify安装了Browserify。 Browserify 的二进制文件在 projectname/node_modules/browserify 下正确下载。

我在 projectname/src/main/resources/static/test.js 中有一个 test.js 文件,其中包含以下代码

var hiObj = {
  sayHi: function(){
    return "Modules"
  }
}

module.exports = hiObj; 

我在 projectname/src/main/resources/static/script.js 中有 script.js,并且该文件作为静态资源添加到我的 HTML 中。

script.js 看起来像这样

var obj = require('test.js');
console.log(obj.sayHi());

但是当我尝试渲染 index.html 时,我在控制台中看到了这个

Uncaught ReferenceError: require is not defined

如何让它工作?

最佳答案

使用诸如GruntGulp之类的构建工具。通过 Gulp,您可以直接使用 Browserify API 并在 Gulp 流中使用它,例如:

var browserify = require('browserify');

// Stuff

gulp.task('js', function() {
  return browserify(package.paths.app)
   .pipe(/** Do stuff */);
   // More processing
});

对于 Grunt,有 grunt-browserify模块。

关于node.js - Maven/Spring 与 Browserify : require is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33712907/

相关文章:

java - 什么是 Maven 中的 MOJO?

java - 通过 maven 的 OpenJDK 11 + OpenJFX 11 无法在 Eclipse 2018-09 + Java 11 补丁中运行

json - 如何使我的存储库成为 package.json 中的依赖项并让它提示我输入信息?

mysql - 对于大量数据,有没有办法加快从 Node.js 向客户端发送数据的速度?

node.js - sudo npm install -g Node 检查器错误

node.js - Angular 4使用 Node api在新选项卡中显示pdf

node.js - Heroku 记录 : "missing script:start" ,,即使它位于:(

javascript - 如何在nodejs中将一个api请求转换为另一个api请求

java - 推荐的 Maven 包结构?

javascript - 加载本地环境变量以在 NPM 脚本中使用