我正在尝试使用自定义控件来获取Angular中的contenteditable元素,如this example中所述。但是,我还需要使用一个控制器,即使我的控制器完全为空,也会导致代码的可信部分失败。
This Plunker显示所需的行为,但不包括控制器。
<body ng-app="myApp">
<div>
<h1 contenteditable ng-model="test">123</h1>
<textarea ng-model="test"></textarea>
</div>
</body>
This Plunker显示将控制器添加到HTML文件第10行的div中,但第一个Plunker的所需行为不再存在。
<body ng-app="myApp">
<div ng-controller="mainController">
<h1 contenteditable ng-model="test">123</h1>
<textarea ng-model="test"></textarea>
</div>
</body>
答案 0 :(得分:1)
您必须使用应用程序显式注册控制器 - 默认情况下不允许使用全局控制器功能:
.controller("mainController", function mainController($scope){
});
现在这是Angular v1.3 +
中的默认选项(当然,您还有其他与不受信任的HTML绑定的问题,但这是一个不同的故事)