首页  >  文章  >  web前端  >  riot.js 学习【一】自定义标签

riot.js 学习【一】自定义标签

黄舟
黄舟原创
2017-01-16 15:59:441224浏览

Riot.js最强大的功能,莫过于自定义标签,先来一段代码,看个效果:

[code]<!Doctype html>
<html>
<head>
    <meta charset="utf-8" />
    <script type="text/javascript" src="riot.js"></script>
    <script type="text/javascript" src="compiler.js"></script>
</head>
<body>

    <!-- 调用自定义标签 -->
    <timer start="10"></timer>

</body>

<!-- 最前面一定要有空格或TAB,留意它的type -->
<script type="riot/tag">
    <timer>
        <h3>Times: { index }</h3>
        this.index = opts.start || 0;

        var self = this;
        tick(){
            // 每个1秒,index自增
            this.index++;
            // 调用this.update更新UI【最欣赏这个了,能自己控制】
            this.update();
        }
        var timer = setInterval(this.tick, 1000);
    </timer>
</script>

<!-- 调用riot,启动自定义标签timer -->
<script type="text/javascript">
    riot.mount("timer");
</script>
</html>

效果如下[每个1秒,times的值,就+1]: 

167.png

说一下,新人会遇到的坑:

script type=”riot/tag” 

compiler会遍历所有带有script type=”riot/tag” 的元素,如果script有src,则会加载外部的文件,如果没有src,则编译script里的内容。

PS: script中编写的内容,必须是空格或tab开头,如果直接跟着 “77088c5dc09a4209f6e70f13bd68efb7 10 ? ‘老头’ : ‘小屁孩’ },都可以支持

支持引用外部标签定义文件

[code]<script src="todo.tag" type="todo/tag"></script>


todo.tag的内容和编译,按照上面例子编写即可。

以上就是riot.js 学习【一】自定义标签的内容,更多相关内容请关注PHP中文网(www.php.cn)!



声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn