SOURCE

console 命令行工具 X clear

                    
>
console
Yox.component("Xcc", {
  
  model: "opts",
  template: `
<span style="color: red" >{{sex}} {{opts.name}} <button on-click="setName(this)">set</button></span>
`,
  methods: {
    setName(){
      this.set("sex", "sex被组件自身改了")
      this.set("opts.name", "opts.name也被组件自身改了")
    }
  }
});

 
var app = new Yox({
  el: '#app',
  template: '#template',
  data: {
    version: Yox.version,
    list: [
      {sex: "m", opts: {name: "aaa"}}, 
      {sex: "m", opts: {name: "bbb"}}, 
      {sex: "m", opts: {name: "ccc"}}
    ]
  },
  methods: {
    setOpts: function(){
      let users =  this.copy(this.get("list"));
      users.forEach(function(user) {
					user.opts.name = "ccc";
        	user.sex = "user.sex 可以改, user.opts.name 改不了";
				});
      this.set("list", users);
    }
  }
  
})
<div id="app"></div>

<script id="template" type="text/plain">
	<div>
  {{version}} <hr>
  <button type="button" on-click="setOpts()">setCompOptsFromRoot</button>
 		<ul>
    
  {{#each list}}
  <li><Xcc model="opts" sex="{{sex}}" /></li>
  {{/each}}
  
  </ul>
	</div>
</script>

本项目引用的自定义外部资源