ng-init json объект
Я использую angularjs (ng-init) и хочу присвоить значение переменной как jsonObj.
Я пробую это, но это не работает.
ng-init = "процент Obj = [{ " значение ":40," цвет ":"#F5A623" },{ " значение ":60," цвет ":"#F5A623" }];
и еще один вопрос, который я хочу присвоить значение, как
centObj = [{ "value": parseInt($scope.projectData[0].value),"color":"#F5A623" },{ "value": parseInt($scope.projectData[0].value),"color":"#F5A623" }]
Как решить эту проблему??
Спасибо
5 ответов
Вы можете использовать объект окна для установки вашего JSON:
<script type="text/javascript">
window.data= {awesome:1};
</script>
Посмотреть:
<div ng-controller="myCntrl" ng-init="init('data')">
контроллер:
function myCntrl($scope) {
$scope.init = function (settings) {
settings = window[settings];
console.log(settings.awesome); //1
};
}
Побег ваши цитаты...
ng-init="percentObj = [{ \"value\":40,\"color\":\"#F5A623\" },{ \"value\":60,\"color\":\"#F5A623\" }];"
Попробуй это...
<body ng-controller="TestController">
<div ng-init="Init()">
{{percentObj || json }}
</div>
</body>
$scope.Init = function()
{
$scope.percentObj = [{ "value":40,"color":"#F5A623" },{ "value":60,"color":"#F5A623" }]
}
Просто добавьте JSON-кодированную строку в атрибут некоторого элемента, а затем поймайте это с помощью Angular.
HTML
<div data-config="{title:'this is my title'}" my-directive></div>
AngularJS:
app.directive('myDirective', function () {
return {
restrict: 'A',
link: function (scope, element) {
// apply config from element's data-config attribute
scope.config = element.data('config');
// print out the data in console
console.log(scope.config);
}
};
});
Можно сделать и без jQuery, тогда .data('config')
часть изменений.
Для второго, пожалуйста, проверьте код ниже
var obj = {};
$scope.percentObj = [];
obj.value = parseInt($scope.projectData[0].value);
obj.color = "#F5A623";
$scope.percentObj.push(obj);