角带。弹出窗口中的双向绑定

AngularStrap. 2-way binding in popover

美好的一天,

我可以通过模板成功地将内容绑定到弹出框正文中,但是在此区域内所做的更改不会绑定回父范围。这是一个简单的例子。 Plunker

如有任何帮助,我将不胜感激

<!DOCTYPE html>
<html>
<head>
    <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css">
    <title>2-way binding popover</title>
</head>
<body>
<div data-ng-app="myApp" data-ng-controller="defaultCtrl" style="margin: 100px 100px">
    <button type="button" class="btn btn-lg btn-danger" data-unique="1" data-auto-close="1" data-placement="bottom" data-content-template="popover-tmpl.html" data-title="Title Two" data-html="true" bs-popover>
        Change name
    </button>
    {{ name }}
    <script type="text/ng-template" id="popover-tmpl.html">
        {{ name }}
        <input type="text" data-ng-model="name">
    </script>
</div>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.5/angular.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-strap/2.1.5/angular-strap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-strap/2.1.5/angular-strap.tpl.min.js"></script>

<script type="text/javascript">
    var app = angular.module("myApp", ['mgcrea.ngStrap']);
    app.controller("defaultCtrl", ["$scope", function($scope) {
        $scope.name = 'Roman';
    }]);
</script>
</body>
</html>

您正在尝试绑定原语。在 angular 中,由于子作用域而导致问题。然而,绑定到一个对象将起作用。将范围声明更改为:

$scope.user = {
    name: 'Roman'
}

以及您对 user.name 的绑定。这是一个更新的 Plunker:http://plnkr.co/edit/ZEvXi9wFF8FVh0WFxn3l?p=preview