2

我需要为一组高级用户提供一种创建和保存数学公式的方法,该公式稍后将作为购物车结账程序的一部分运行。我必须假设电源使用不是程序员,但可以遵循简单的指令。公式不会经常更改,但必须在高级用户的控制下,而不是系统管理员或程序员。

视觉语言 UI 似乎很适合这种需求,高级用户可以与之相关的环境最终生成 JavaScript 代码,签出例程将能够评估 (myFormula)。

例如我的公式:

在这个例子中,费用被指定为...... input type="number" ng-model="fee" 并且在结账时输入总金额(不包括保存公式之前的测试函数)。

...然后在一个单独的文本框中,公式将如下所示(我假设费用节省为 0.05。

var youPay = 如果总金额 > 1000 THAN 费用 * 总金额 ELSE 50

youPay 结果将显示给结帐的人。在此示例中,如果总金额低于 1000 美元,则适用 50 美元的基本金额,否则他们将支付总金额的 5%

有人对Google Blockly项目或其他可能有帮助的解决方案有任何意见吗?也许是一个 Excel 到 JavaScript 代码生成器,可以在保存到我的应用程序之前测试 Excel 公式。

然后这个解决方案的另一层需要确保公式不会产生安全问题或引入可能导致结帐应用程序崩溃的错误。

4

1 回答 1

2

这听起来像是块状框架的一个很好的应用程序。可以使用https://blockly-demo.appspot.com/static/demos/code/index.html上的块状代码演示创建像您提供的公式一样的公式,您可以将其用作启动项目的起点。没有进一步修改,它看起来像这样:http://i.stack.imgur.com/AXOJy.png 我没有足够的声誉在帖子中嵌入图像..)

您需要做的是块状地告诉您预定义的变量,以便用户可以从下拉列表中选择它们并添加类似保存按钮的内容来生成代码并将其保存在某处。也许在块状生成 javascript 的方式上需要进行一些修改,因为它的设计目的是生成少量但完整的脚本,而不是只生成较大脚本的一小部分。但是对代码生成器的修改在块中非常容易。

希望能有所帮助。

于 2015-09-10T08:24:39.233 回答