即使经过一些彻底的研究,我似乎也无法找到为什么我的$ interpolateProvider无效。这是我定义新符号的地方。
var APP = APP || {};
APP.Subapp = APP.Subapp || {};
APP.Subapp.Admin = angular.module('APP.Subapp.Admin', ['APP.Subapp.Modules']);
APP.Subapp.Admin.config(function($interpolateProvider) {
$interpolateProvider.startSymbol('{[{').endSymbol('}]}');
});
我使用ng-app调用正确的应用程序。
<html ng-app="APP.Subapp.Admin" ng-controller="MainController">
<head>
<link rel="stylesheet" href="/stylesheets/style.css"/>
...
由于我正在使用把手,我真的想改变它,我不能使用ng-bind,因为我需要通过某些功能传递信息,如ng-click。
... ng-click="confirm({{client.id}}) ...
非常感谢任何帮助。
编辑//
我解决了我的问题,如果它可以帮助一些人在那里。好像我在主模块js文件中覆盖了我的配置。这是有效的代码。
(function(APP){
'use strict';
APP.Subapp.Admin.config(function( $controllerProvider, $interpolateProvider ){
APP.Subapp.Admin.controller = $controllerProvider.register;
$interpolateProvider.startSymbol('{[{');
$interpolateProvider.endSymbol('}]}');
});
})(APP);
答案 0 :(得分:2)
var customInterpolationApp = angular.module('customInterpolationApp', []);
customInterpolationApp.config(function($interpolateProvider) {
$interpolateProvider.startSymbol('[{');
$interpolateProvider.endSymbol('}]');
});
customInterpolationApp.controller('DemoController', function() {
this.label = "This binding by [{ }] interpolation symbols.";
});
<html lang="en">
<head>
<meta charset="UTF-8">
<title>custom-interpolation-markup-production</title>
<script src="//code.angularjs.org/snapshot/angular.min.js"></script>
</head>
<body ng-app="customInterpolationApp">
<div ng-controller="DemoController as demo">
[{demo.label}]
</div>
</body>
</html>
我认为这会有所帮助。只是试试。
答案 1 :(得分:1)
我准备了一个示例,其中展示了如何使用$ interpolateProvider:http://plnkr.co/edit/0lotZRHhvv2bIKc96RVi?p=preview
以下是代码:
<script>
var customInterpolationApp = angular.module('customInterpolationApp', []);
customInterpolationApp.config(function($interpolateProvider) {
$interpolateProvider.startSymbol('[[');
$interpolateProvider.endSymbol(']]');
});
customInterpolationApp.controller('DemoController', function() {
this.label = "This binding is brought you by [[ ]] interpolation symbols.";
});
</script>
<div ng-app="App" ng-controller="DemoController as demo">
[[demo.label]]
</div>
答案 2 :(得分:0)
试试这个(只需将$ interpolateProvider添加到依赖项):
'use strict';
var myApp = angular.module('myApp', []);
myApp.config(['$interpolateProvider',
function($interpolateProvider) {
$interpolateProvider.startSymbol('{[{');
$interpolateProvider.endSymbol('}]}');
}
]);