我正在尝试创建一个脚本,该脚本会将文本文件中的多行文本插入到我的index.html中。
这就是我的想法。创建一个名为testEnvConfig.json.
的文件。内容将包含我的测试Firebase服务器的设置。
var config = {
apiKey: "AIzaSyALdWxUxt63AwOrj-waTNvZo7_zt8CuMgs",
databaseURL: "https://bggoplantestdev.firebaseio.com",
projectId: "bggoplantestdev",
storageBucket: "bggoplantestdev.appspot.com",
messagingSenderId: "499035393973"
};
我还有一个名为index.html
的超大型html文件,其中包含1000多行代码。但是,$config
我只是想运行一个脚本./configureEnv <env>
,该脚本将测试文件作为参数并将$ config变量替换为测试文件的内容。
所以最终结果是这样:
*之前* (在index.html中)
try {
var $config
var fbapp = firebase.initializeApp(config);
之后(在index.html中)
try {
var config = {
apiKey: "AIzaSyALdWxUxt63AwOrj-waTNvZo7_zt8CuMgs",
databaseURL: "https://bggoplantestdev.firebaseio.com",
projectId: "bggoplantestdev",
storageBucket: "bggoplantestdev.appspot.com",
messagingSenderId: "499035393973"
};
var fbapp = firebase.initializeApp(config);
有关如何执行此操作的任何建议?
答案 0 :(得分:1)
将文件的内容读取到变量中。然后使用here-doc作为模板,并在所需的位置替换变量。
OVS
脚本的参数是包含配置的文件的名称。
实际上,我建议您从配置文件中取出from sympy import solveset
from sympy import Symbol
e = Symbol('e')
hA = Symbol('hA')
hB = Symbol('hB')
ed = Symbol('ed')
equations = [((1-ed)*(1-e))/hA>0, ((1-ed)*(1-e))/hA<.03, (ed*e+(1-ed)-e)/hB>.03/.97, e>0, e>1, hA>0, hB>0, hB<1, ed>0, ed<1]
variables = [e,hA,hB,ed]
solveset(equations,variables)
,然后放入结构。变量的名称应仅在模板中。然后脚本将如下所示:
Traceback (most recent call last):
File "main.py", line 14, in <module>
solveset(inequalities,variables)
File "/home/runner/.local/lib/python3.6/site-packages/sympy/solvers/solveset.py", line 1658, in solveset
raise ValueError("%s is not a valid SymPy expression" % f)
ValueError: [(1 - e)*(1 - ed)/hA > 0, (1 - e)*(1 - ed)/hA < 0.03,
(e*ed - e - ed + 1)/hB > 0.0309278350515464, e > 0,
e > 1, hA > 0, hB > 0, hB < 1, ed > 0, ed < 1] is not a valid SymPy expression