123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>MVVM</title>
- </head>
- <body>
- <div id="mvvm-app">
- <input type="text" v-model="someStr">
- <input type="text" v-model="child.someStr">
- <p v-class="className" class="abc">
- {{someStr}}
- <span v-text="child.someStr"></span>
- </p>
- <p v-html="child.htmlStr"></p>
- <button v-on:click="clickBtn">change model</button>
- </div>
- <script src="http://cdn.bootcss.com/vue/1.0.25/vue.js"></script>
- <script src="./js/observer.js"></script>
- <script src="./js/watcher.js"></script>
- <script src="./js/compile.js"></script>
- <script src="./js/mvvm.js"></script>
- <script>
- var vm = new MVVM({
- el: '#mvvm-app',
- data: {
- someStr: 'hello ',
- className: 'btn',
- htmlStr: '<span style="color: #f00;">red</span>',
- child: {
- someStr: 'World !'
- }
- },
- methods: {
- clickBtn: function(e) {
- var randomStrArr = ['childOne', 'childTwo', 'childThree'];
- this.child.someStr = randomStrArr[parseInt(Math.random() * 3)];
- }
- }
- });
- vm.$watch('child.someStr', function() {
- console.log(arguments);
- });
- </script>
- </body>
- </html>
|