12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- <!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>{{ getHelloWord }}</p>
- <p v-html="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 !'
- }
- },
- computed: {
- getHelloWord: function() {
- return this.someStr + this.child.someStr;
- }
- },
- 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>
|