mirror of
https://github.com/marko-js/marko.git
synced 2025-12-08 19:26:05 +00:00
adding assign tag
This commit is contained in:
parent
2a34d940e4
commit
dd3a86c564
14
taglibs/core/assign-tag.js
Normal file
14
taglibs/core/assign-tag.js
Normal file
@ -0,0 +1,14 @@
|
||||
module.exports = function codeGenerator(elNode, generator) {
|
||||
var attributes = elNode.attributes;
|
||||
|
||||
if (!attributes) {
|
||||
generator.addError('Invalid <assign> tag. Argument is missing. Example; <assign x=123 />');
|
||||
return elNode;
|
||||
}
|
||||
|
||||
var builder = generator.builder;
|
||||
|
||||
return attributes.map((attr) => {
|
||||
return builder.assignment(attr.name, attr.value);
|
||||
});
|
||||
};
|
||||
@ -14,6 +14,9 @@
|
||||
"<var>": {
|
||||
"node-factory": "./var-tag"
|
||||
},
|
||||
"<assign>": {
|
||||
"code-generator": "./assign-tag"
|
||||
},
|
||||
"<*>": {
|
||||
"transformer": "./core-transformer"
|
||||
}
|
||||
|
||||
1
test/fixtures/render/autotest/assign-tag/expected.html
vendored
Normal file
1
test/fixtures/render/autotest/assign-tag/expected.html
vendored
Normal file
@ -0,0 +1 @@
|
||||
HELLO 1230
|
||||
3
test/fixtures/render/autotest/assign-tag/template.marko
vendored
Normal file
3
test/fixtures/render/autotest/assign-tag/template.marko
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<assign foo=123 bar='hello'/>
|
||||
|
||||
${bar.toUpperCase()} ${foo*10}
|
||||
1
test/fixtures/render/autotest/assign-tag/test.js
vendored
Normal file
1
test/fixtures/render/autotest/assign-tag/test.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
exports.templateData = {};
|
||||
Loading…
x
Reference in New Issue
Block a user