0

我有一个包含在不同页面上的表,这很好用,除非我无法获取包含表中的值。如果我在页面上使用它:

 <div data-ng-include="'/app/views/tasks/tasksTable.html'" />

该表显示,但我无法显示文件 tasksTable.html 中的值,这显示未定义:

        <td>
            <i class="icon-ok-sign" ng-click="addTask()"></i>
        </td>
        <td>
            <input ng-model="task" />
        </td>

从控制器:

    $scope.addTask = function (data) {
         console.log($scope.task);        
    };

如果我将表格放在我的文件中,而不是使用 ng-include 来显示表格,我可以显示我在与 ng-model="task" 相关的输入中键入的任何内容。

4

1 回答 1

1

无法访问任务的原因有两个。首先,是因为ng-include为作为父控制器范围的子模板的模板创建了一个新范围。第二个原因是您将字符串模型直接附加到范围,而不是创建包含模型的对象。我创建了一个有效的 CodePen 示例来演示如何解决您的问题。

您应该阅读原型继承以及它如何影响范围

我希望这有帮助。

于 2013-09-27T15:37:25.033 回答