рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ
рдореИрдВ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдХрд▓рди рдЙрдкрдХрд░рдг рд▓рд┐рдЦрддрд╛ рд╣реВрдВ, рдпрд╣ рдХрдо рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред
рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╢реИрд▓реА рдлрд╝реЛрд▓реНрдбрд░ рдФрд░ рдлрд╝рд╛рдЗрд▓реЗрдВ рдкрд╕рдВрдж рдХрд░рддреА рд╣реИрдВ
- styles
_utils.less
index.less
рдФрд░ index.less
рд╕рд╛рдордЧреНрд░реА рд╣реИ
<strong i="12">@import</strong> "./utils"
рдореИрдВ рдХрдо рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдо рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рддрд╛ рд╣реВрдВ рдЬреИрд╕реЗ
let less=require('less');
//....
less.render(indexContent,options,(err,result)=>{
console.log(result.css)
});
рдЬрдм рдореИрдВ _utils.less
рд╕рд╛рдордЧреНрд░реА рдмрджрд▓рддрд╛ рд╣реВрдВ, рддреЛ рдЙрдкрд░реЛрдХреНрдд рдХреЛрдб рдЕрдкрдиреЗ рдЖрдк рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛ рдЬрд╛рдПрдЧрд╛
рд▓реЗрдХрд┐рди 3.0.x рдХреЗ рдмрд╛рдж рд╕реЗ, рдЬрдм рдореИрдВ _utils.less
рд╕рд╛рдордЧреНрд░реА рдмрджрд▓рддрд╛ рд╣реВрдВ, рддреЛ result.css
рдкрд╣рд▓реА рдмрд╛рд░ рдкрд░рд┐рдгрд╛рдо рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рднреА рдХрд┐рддрдиреА рдмрд╛рд░ рдмрджрд▓рддрд╛ рд╣реИред
рд▓реЗрдХрд┐рди 2.7.x рдареАрдХ рд╣реИ, рдЬрдм рдореИрдВ _utils.less
рд╕рд╛рдордЧреНрд░реА рдмрджрд▓рддрд╛ рд╣реВрдВ, рддреЛ result.css
рднреА рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИред
Https://github.com/stevelacy/gulp-less/issues/283 рдХреЗ рд╕рдорд╛рди рд▓рдЧрддрд╛ рд╣реИ
рдореИрдВ рдЗрди "рдСрдЯреЛ-рд╡реЙрдЪ" рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рд╡рд╣реА рдХрдо рд╡рд╕реНрддреБ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░рддреНрдпреЗрдХ рдЕрдкрдбреЗрдЯ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╣реИ рдирд╛? рддрдм рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрд▓рдЧ-рдЕрд▓рдЧ render
рдХреЙрд▓реНрд╕ рдпрд╛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдХреЗ рдмреАрдЪ рдХреБрдЫ рдЖрдпрд╛рдд рдХреИрд╢ рдХреЛ рд░реАрд╕реЗрдЯ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╣реИред
@ рд╕рд╛рдд-рдЪрд░рдг-рдЕрдзрд┐рдХрддрдо рд╣рд╛рдБ, рдкреНрд░рддреНрдпреЗрдХ рдЕрджреНрдпрддрди рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрд╕реА рдХрдо рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдореИрдВ gulp- рдХрдо рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ, рдореИрдВ рд╕реАрдзреЗ api рдХрд╛ рдХрдо рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдБред
рдпрд╣ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдХрдо рдХреИрд╢ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ
рддреЛ рддреНрд╡рд░рд┐рдд рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб (рдЬрдм рддрдХ рдХрд┐ рдмрдЧ рдареАрдХ рди рд╣реЛ рдЬрд╛рдП) рдЖрдкрдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣реИ:
require('less').render(indexContent,options,(err,result)=>{
console.log(result.css)
});
рд╣рд╛рдБ, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЗрд╕ рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЭреВрда рддрд░реНрдХреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдкреНрд░рддрд┐рдмрджреНрдз рдЬрд╣рд╛рдВ calltree рдЫреЗрдбрд╝рдЫрд╛рдбрд╝ https://github.com/less/less.js/commit/a48c24c4dd3c13e00a20ece80323768496a96b36#diff -a6b31db4e862654ae597161e441689bb
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрджреНрджрд╛ рдЗрд╕ рдкреНрд░рддрд┐рдмрджреНрдз рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ ...
рд╣рдореНрдо, рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ рдореИрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЖрдпрд╛рдд рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ ...
рдиреЛрдб рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ, рдореИрдиреНрдпреБрдЕрд▓ рдХрдо рд╕рдВрдХрд▓рд┐рдд рдлрд╝рд╛рдЗрд▓ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВ:
const less = require('less');
const fileManagers = less.environment && less.environment.fileManagers || [];
fileManagers.forEach(fileManager => {
if (fileManager.contents) {
fileManager.contents = {};
}
});
рдзрдиреНрдпрд╡рд╛рдж @tiodot рдпрд╣ рдЕрдм рддрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ ... рд▓реЗрдХрд┐рди рдЖрд╢рд╛ рд╣реИ рдХрд┐ рд╣рдо рдЬрд▓реНрдж рд╣реА "рдХреНрд▓реАрдирд░" рд░рд╛рд╕реНрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ!
рдпрд╣ 3.0 рдХреЗ рд▓рд┐рдП рдЬреЛрдбрд╝рд╛ рдЗрди рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛ рд╕рдХрддрд╛ рд╣реИред https://github.com/less/less.js/blob/master/lib/less/tree/mixin-definition.js#L9
рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ рдпрджрд┐ / рдФрд░ рдХреЗрд╡рд▓ рдХрдерди рдХреЛ рджреЗрдЦреЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╕рдорд╕реНрдпрд╛ рдЕрднреА рднреА рд╣реЛрддреА рд╣реИред рдпрджрд┐ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЗрд╕ рдЕрдиреБрдХреВрд▓рди рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЬреЛ рдЕрдзрд┐рдХ рдЖрджрд░реНрд╢ рд╣реЛрдЧрд╛ рд╡рд╣ рдлрд╝рд╛рдЗрд▓ рдкреНрд░рдмрдВрдзрдХ рдпрд╛ рдХрд┐рд╕реА рднреА рдЖрдВрддрд░рд┐рдХ рдХреИрд╢ рдХреЛ рдирдП рдкрд╛рд░реНрд╕ / рд░реЗрдВрдбрд░ рдХреЙрд▓ рдХреЛ рдХреНрд▓рд┐рдпрд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдмрд╕ рдЬрд╛рдБрдЪ рдХрд░ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЕрджреНрдпрддрди рд╣реИрдВ?
рдЗрд╕реЗ рдХрдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреБрдЫ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХрд╛рдлреА рдХрдо рд╣реЛ рд░рд╣реЗ рд╣реИрдВред
рдмрд╕ рдХреБрдЫ рдШрдВрдЯреЗ рдкрд╣рд▓реЗ рдПрдХ рдФрд░ рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдпрд╣ рдареАрдХ (рдкреИрдЪ рдХреЗ рдмрд┐рдирд╛) рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛ред рдХреЛрдИ рдФрд░?
"dependencies": {
"browser-sync": "^2.24.4",
"gulp": "^4.0.0",
"gulp-autoprefixer": "^5.0.0",
"gulp-clean-css": "^3.9.4",
"gulp-hb": "^7.0.1",
"gulp-less": "^4.0.0",
"gulp-load-plugins": "^1.5.0",
"gulp-rename": "^1.2.2"
},
"optionalDependencies": {
"less": "^3.0.4"
}
рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реИ, рдЬреЛ @xinglie рджреНрд╡рд╛рд░рд╛ рдХрдо @ 2.7.3 рд╕реЗ рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
@Tiodot рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ @ рд╕рд╛рдд-рдЪрд░рдгреЛрдВ-рдЕрдзрд┐рдХрддрдо рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП require('less').render()
рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ :(
рдХреНрдпрд╛ рд╢рд╛рдпрдж рдЕрдзрд┐рдХ рд╕реБрдЭрд╛рд╡ рд╣реИрдВ? :)
рдЗрд╕рд╕реЗ рднреА рдкреНрд░рднрд╛рд╡рд┐рдд :(
рдирдорд╕реНрддреЗ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЬреЛ рдХреБрдЫ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рдХрд┐рдпрд╛ рдерд╛ @tiodot рдиреЗ рдЕрдм рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ!
рдореИрдВрдиреЗ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдЖрдЬрдорд╛рдпрд╛ рдФрд░ рдореИрдВрдиреЗ рдХреЛрдб рдореЗрдВ рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдЧрд▓рддреА рдХреА рд╣реЛрдЧреАред
(рдХрдо@3.0.4 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ)ред
рдзрдиреНрдпрд╡рд╛рдж @tiodot !
рд╕рд╛рднрд╛рд░ @tiodot
@tiodot @ hawkerboy7 @TigersWay рдХреНрдпрд╛ рдпрд╣ рд╢рд╛рдЦрд╛ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рддреА рд╣реИ? рдпрджрд┐ рд╣рд╛рдВ, рддреЛ рдореИрдВ рдПрдХ рдкреАрдЖрд░ рдмрдирд╛рдКрдВрдЧрд╛ - рдХреГрдкрдпрд╛ рдЗрд╕реЗ рджреЗрдЦреЗрдВ -
рд╕рд┐рд░реНрдл 2 рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЪреЗрдХ рдХрд┐рдпрд╛, рдкреИрдХреЗрдЬ рдХреЗ рдЕрдВрджрд░ @tiodot рдорд╣рд╛рди рдкреИрдЪ рдмрд╛рд╣рд░ рдЯрд┐рдкреНрдкрдгреА рдХреАред
"optionalDependencies": {
"less": "github:matthew-dean/less.js#cache-modified"
},
@ рдореИрдереНрдпреВ-рдбреАрди рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ!
@ рдореИрдереНрдпреВ-рдбреАрди рд╣рд╛рдБ, рдЗрд╕рдиреЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░ рджрд┐рдпрд╛ рд╣реИ! рдкреАрдЖрд░ рдмрдЪрд╛рд╡ рдХреЗ рд▓рд┐рдП !! :)
@tiodot @ hawkerboy7 @TigersWay рдХреВрд▓, рдЕрдЪреНрдЫреА рдмрд╛рдд рдпрд╣ рд╣реИ, рдЖрдкрдХреЛ рдереЛрдбрд╝реА рддреЗрдЬреА рд╕реЗ рдХрдо рдПрдХ рдЧрд░реНрдо рдХреИрд╢ (3.x рд╕реБрд╡рд┐рдзрд╛) рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рддрдп рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ; рдЕрдиреНрдпрдерд╛ рдореИрдВрдиреЗ рдЗрд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рд╣реЛрддрд╛ред рдПрдХ рдкреАрдЖрд░ рдХрд░реЗрдВрдЧреЗред
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдиреЛрдб рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ, рдореИрдиреНрдпреБрдЕрд▓ рдХрдо рд╕рдВрдХрд▓рд┐рдд рдлрд╝рд╛рдЗрд▓ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВ: