使用Grunt获取Python变量

时间:2018-04-18 13:55:38

标签: javascript python gruntjs

1。摘要

我不知道如何获取Python变量,使用Grunt。

我需要学习什么才能解决这个问题?

2。细节

我构建了网站使用PelicanGrunt。我使用相同的变量:

  1. 用于Pelican的pelicanconf.py中的Python格式
  2. Grunt的Gruntfile.coffee中的JavaScript格式
  3. 我希望这些变量不会重复,只包含在pelicanconf.py中。

    3。实施例

    pelicanconf.py的一部分:

    SASHAVARIABLE = 'sashavalue'
    

    Gruntfile.coffee的一部分(我使用template mechanism):

    variables:
        sashavariable: "sashavalue"
    
    exampleplugin:
        exampletask: "<%= variables.sashavariable %>"
    

    我希望通过Grunt获得SASHAVARIABLEpelicanconf.py变量的值。

    当时,如果我更改SASHAVARIABLE的值,我也需要更改Gruntfile.coffee中的值。这是一项重复的工作。

    4。没帮忙

    1. 我在Google中尝试搜索查询(grunt OR javascript) (get OR parse OR scrape) python variable→我找不到问题的答案。
    2. 感谢。

1 个答案:

答案 0 :(得分:1)

直接在JavaScript中阅读/运行Python并不是一件容易做到的事情。

您可以将Python值加载为字符串并手动解析它。但是,我强烈建议避免这样做,因为它要么你需要一个非常简单的Python文件,要么是一个非常复杂的字符串解析器。

相反,我建议选择一种易于被两者阅读的格式。使用JavaScript进行dealling时,JSON始终是一个不错的选择,并且可以在本地阅读:

const config = require('./path/to/config.json')

并且基本上每种语言都有解析器(for Python)。

另一个常见的选择是YAML,尽管你需要在Javascript中使用第三方库。