0.0.1 • Published 6 years ago

toex v0.0.1

Weekly downloads
3
License
MIT
Repository
github
Last release
6 years ago

ToeX

A javascript eexpression compiler based on angular-expressions. It is a safe js string parser and executer.

Install

npm install --save toex

Usage

var ToeX = require('toex')
var toex = new ToeX($scope)
var normalExpressionResult = toex.parse('1 + 1') // 2
var scopeExpressionResult = toex.parse('key + 1') // if $scope.key = 1, result is 2, here key stands for $scope.key

$scope

A $scope is a js object, if you not passed, it will use global and window as optional. i.e.

var toex = new ToeX() // global or window passed as default

What's a scope? It is an object which will be used as master in parsed string, for example:

toex.parse('members[0].name') // will get $scope.members[0].name

Variables in parsed string will be treated as a property (or deep property) of $scope.

API

filter(name, fn)

To use like 'book.name | toUpperCase' in your code, you should use filter method to add a filter to your instance:

toex.filter('toUpperCase', function(value) {
  return value.toUpperCase()
})

.filter should be run before any parsing.

parse(str)

To parse the string expression which depend on $scope.

@return the result of string expression.

assign(key, value)

Quick way to set value on $scope:

toex.assign('members[1].name', 'tomy') // $scope.members[1].name = tomy, even though $scope.members[1] is undefined, this will work.