Arr*_*ght 4 javascript node.js pug
有没有办法将数据/ aria属性的对象传递给元素?
我试过了:
div(data={foo:'bar'})
div(data={foo='bar'})
div&attributes({aria:{foo:'bar'}})
Run Code Online (Sandbox Code Playgroud)
但是这些都不输出所需的属性符号。对象文字的第一和第三位在基础数据/ aria属性中。第二个是语法错误。
我可以找到该作品的唯一方法是:
div(data-foo='bar')
div&attributes({'aria-foo':'bar'})
Run Code Online (Sandbox Code Playgroud)
用减号领先新行 -
您可以使用JADE / PUG编写常规JavaScript。这为您提供了解决几乎所有问题的强大武器。
只是抓住像 var attributes = {'foo':'bar', 'bar':'foo'}
,并在每个循环中使用所需的前缀扩展它的键即可。
这是可以使用的笔http://codepen.io/pure180/pen/kXwqdA,这可能是您的代码:
- var attributes = {'foo':'bar', 'bar':'baz'}
- var ariaAttributes = {}
- for (attr in attributes) {
- var key = 'aria-' + attr
- ariaAttributes[key] = attributes[attr]
- }
div&attributes(ariaAttributes) Test
Run Code Online (Sandbox Code Playgroud)
您也可以将其用作全局mixin,这是Pen http://codepen.io/pure180/pen/KrqYpB,看起来像这样:
mixin setAriaAttr(object)
- var attributes = object
- var ariaAttributes = {}
- for (attr in attributes) {
- var key = 'aria-' + attr
- ariaAttributes[key] = attributes[attr]
- }
div&attributes(ariaAttributes) Test
- var aria = {'foo':'bar', 'bar':'baz'}
+setAriaAttr(aria)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
852 次 |
最近记录: |