我尝试使用更少的js和更少的可用字符串路径 使用自定义修改变量 代码
available.less
@image-path : "/assets/images";
@bg-image : "/bg/01.png";
style.less
@import "available.less";
body{
background: url('@{image-path}@{bg-image}') repeat top left;
}
在javascript中
less.modifyVars({
'@bg-image' : "/bg/08.png"
});
我收到错误ParseError:无法识别的输入
@bg-image: /bg/08.png;
如何解决它
所以,如果我将modifyVars更改为
less.modifyVars({
'@bg-image' : "'/bg/08.png'"
});
值为双引号+单qoute工作!但是我不需要这个修复,因为modifyVars我通过jquery获得了html元素
答案 0 :(得分:1)
考虑在字符串中添加引号,只有它是一个URL。您可以测试字符串是否有/
:
if(field.value.indexOf("/") !== -1) {
variables['@' + field.name] = '"' + field.value + '"';
}
另请参阅:ModifyVars issue when trying to change variables one by one