【问题标题】:Common module in node.js and browser javascriptnode.js 和浏览器 javascript 中的通用模块
【发布时间】:2011-11-11 17:35:44
【问题描述】:

我正在开发一个 node.js 应用程序,并且我想在客户端使用我为 node.js 服务器创建的模块。

一个示例模块是 circle.js:

var PI = Math.PI;

exports.area = function (r) {
  return PI * r * r;
};

exports.circumference = function (r) {
  return 2 * PI * r;
};

然后你做一个简单的

var circle = require('./circle')

在节点中使用它。

如何将 web 目录中的同一个文件用于客户端 javascript?

【问题讨论】:

标签: javascript node.js


【解决方案1】:

这似乎是如何制作一个可以在客户端使用的模块。

https://caolan.org/posts/writing_for_node_and_the_browser.html

mymodule.js:

(function(exports){

    // your code goes here

   exports.test = function(){
        return 'hello world'
    };

})(typeof exports === 'undefined'? this['mymodule']={}: exports);

然后在客户端使用模块:

<script src="mymodule.js"></script>
<script>
    alert(mymodule.test());
</script>

此代码可以在节点中运行:

var mymodule = require('./mymodule');

【讨论】:

    【解决方案2】:

    Browserify

    它神奇地让你做到这一点。

    【讨论】:

    • 不确定它实际上是如何用来做我想要的。它似乎解决了其他一些问题。
    • 而且 browserify 越来越好。
    【解决方案3】:

    Webmake 用于将 CommonJS/NodeJS 模块移植到浏览器。试试看

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-02-07
      • 2020-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-29
      相关资源
      最近更新 更多