変数をそれ自体に連結することは可能ですか?
@varA: "hello ";
@varB: "world";
@varA: "@{varA}@{varB}";
(「hello world」を出力するため)
私はこれを行うことができます、
@varA: "hello ";
@varB: "world";
@varC: "@{varA}@{varB}";
しかし、変数自体を使用することについて何かがすべてを壊しているようです。これは LESS バグですか?
試してみるためにインストールを減らしただけで、実際、最初に手に入れた方法で試してみました
stack_overflowError: Maximum call stack size exceeded in <file>
1 @varB: "world";
実際、変数をそれ自体に割り当てると、同じエラーが発生します。ソースを調べてみましたが、何が原因なのかはっきりとは言えません (ただし、エラーの性質上、かなり簡単に推測できます)。ドキュメントに関する限り、変数は定数であると述べられていますが、いくつかのテストを行った後、実際には古い変数と同じ名前の新しい変数を定義できることがわかりました。そう:
@vA = "hi";
@vA = "hello";
実際に機能し、後で vA を使用すると、値が「hello」になります。実際に必要な場合は、単に一時変数を使用することをお勧めします。
それ自体で新しい @tmp を定義しようとしない限り、@tmp を手元に置いておき、必要なときに使用してください。
これを試して
@varA: hello;
@varB: world;
@varC: @varA@varB;
.test {
text: @varC;
}
コンパイルするとこうなる
.test {
text: hello world;
}
またはこれを試してください:
@varA: hello;
@varB: world;
@varC: "@{varA} @{varB}";
.test {
text: @varC;
}
これを取得するには:
.test {
text: "hello world";
}