Sha256: 30946711c45b1565f1fead7d9f4f9525fb3fb025fb06c40000df8b856055db37

Contents?: true

Size: 1.29 KB

Versions: 88

Compression:

Stored size: 1.29 KB

Contents

# vm-browserify

emulate node's vm module for the browser

[![testling badge](https://ci.testling.com/substack/vm-browserify.png)](https://ci.testling.com/substack/vm-browserify)

# example

Just write some client-side javascript:

``` js
var vm = require('vm');

$(function () {
    var res = vm.runInNewContext('a + 5', { a : 100 });
    $('#res').text(res);
});
```

compile it with [browserify](http://github.com/substack/node-browserify):

```
browserify entry.js -o bundle.js
```

then whip up some html:

``` html
<html>
  <head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
    <script src="/bundle.js"></script>
  </head>
  <body>
    result = <span id="res"></span>
  </body>
</html>
```

and when you load the page you should see:

```
result = 105
```

# methods

## vm.runInNewContext(code, context={})

Evaluate some `code` in a new iframe with a `context`.

Contexts are like wrapping your code in a `with()` except slightly less terrible
because the code is sandboxed into a new iframe.

# install

This module is depended upon by browserify, so you should just be able to
`require('vm')` and it will just work. However if you want to use this module
directly you can install it with [npm](http://npmjs.org):

```
npm install vm-browserify
```

# license

MIT

Version data entries

88 entries across 88 versions & 11 rubygems

Version Path
sequenceserver-3.1.3 public/vendor/npm/vm-browserify@0.0.4/readme.markdown
sequenceserver-3.1.2 public/vendor/npm/vm-browserify@0.0.4/readme.markdown
sequenceserver-3.1.1 public/vendor/npm/vm-browserify@0.0.4/readme.markdown
sequenceserver-3.1.0 public/vendor/npm/vm-browserify@0.0.4/readme.markdown
sequenceserver-3.0.1 public/vendor/npm/vm-browserify@0.0.4/readme.markdown
sequenceserver-3.0 public/vendor/npm/vm-browserify@0.0.4/readme.markdown
sequenceserver-2.2.0 public/vendor/npm/vm-browserify@0.0.4/readme.markdown
sequenceserver-2.1.0 public/vendor/npm/vm-browserify@0.0.4/readme.markdown
optimacms-0.4.3 spec/dummy/node_modules/vm-browserify/readme.markdown
optimacms-0.4.2 spec/dummy/node_modules/vm-browserify/readme.markdown
locomotivecms-4.0.0.alpha1 app/javascript/node_modules/vm-browserify/readme.markdown
locomotivecms-3.4.0 app/javascript/node_modules/vm-browserify/readme.markdown
cortex-0.1.3 spec/dummy/node_modules/vm-browserify/readme.markdown
dragonfly_puppeteer-0.1.0 node_modules/vm-browserify/readme.markdown
lanes-0.8.0 node_modules/vm-browserify/readme.markdown
minimum_viable_product-0.0.11 test/dummy/node_modules/vm-browserify/readme.markdown
brwy_rails-0.0.6 test/dummy/node_modules/vm-browserify/readme.markdown
brwy_rails-0.0.5 test/dummy/node_modules/vm-browserify/readme.markdown
brwy_rails-0.0.4 test/dummy/node_modules/vm-browserify/readme.markdown
brwy_rails-0.0.3 test/dummy/node_modules/vm-browserify/readme.markdown