两个ng-inits无效

时间:2015-10-27 16:15:56

标签: angularjs

我在这里有两个ng-inits。

        <div class="text-center">
            <h3 style="font-size: 26px">
                <editable ng-init="option={title:'Event Title Here'};" model="option.title">{{option.title}}</editable>
            <!-- <editable model="option.title">{{option.title}}</editable> -->
        </h3>
            <h5>
                <editable ng-init="option={description:'Event description Here'};" model="option.description">{{option.description}}</editable>
            </h5>
        </div>

会发生的情况是忽略第一个ng-init而使用第二个ng-init。我需要两者都用

我不知道为什么,我想让两个{{}}区域都有占位符,这是我找到目前为止的唯一方法。

2 个答案:

答案 0 :(得分:1)

实际上,您正在使用在第二个ng-init中创建的对象覆盖在第一个ng-init中创建的对象。您应该在{}处使用上部ng-init初始化选项对象,并让当前的两个ng-inits设置其特定字段,或者在一个位置初始化整个对象。

答案 1 :(得分:0)

由于您没有提供有关editable指令的任何内容,我假设他们没有子范围。因此,为父作用域设置option两个元素共享,ng-init不创建子作用域。

一些事情

  1. Dont use ng-init
  2. 为什么不宣布option = {title:'Event Title Here', description:'Event description Here'}?如果它是同一个实体,它应该是同一个对象,并且只引用DOM中的不同属性。那就是MV *的内容。
  3. 按照1,最好在控制器中声明数据,而不是在DOM上声明数据。