У меня есть холст на моей html-странице. Я пытаюсь вызвать функцию из моего контроллера angularjs по умолчанию, когда холст загружается на html-странице. Я могу сделать это с помощью функции windowng.onload. Но я не могу передать какой-либо параметр через этот путь. Я попробовал ng-init. Но я получаю сообщение об ошибке. Если я пытаюсь использовать ng-mouseover, то это работает. Если я удерживаю мышь над канвой. Но я хочу вызвать эту функцию без какого-либо взаимодействия с пользователем. Просто перезагрузив страницу. Я новичок в angularjs. Есть ли способ, которым я могу это сделать? Спасибо.
HTML часть
<body >
<div ng-app="demo" ng-controller="testCtrl" >
<div class="flex-control-nav" >
<div>
<canvas ng-style="mybody" id="myCanvas" ng-init=init('myCanvas') style="border:1px solid #d3d3d3;">
Your browser does not support the HTML5 canvas tag.
</canvas>
</div>
</div>
</div>
angularjs часть
var app = angular.module("demo", []);
app.controller("testCtrl", function($scope,$http,$window) {
$scope.temp = "";
$scope.rows = []; // init empty array
$scope.datainput =[];
$scope.dataconfig =[];
$http({
method: 'GET',
url: 'http://localhost:5000/database'
}).then(function (data){
},function (error){
console.log("big error");
});
$http({
method: 'GET',
url: 'Data/input.json'
}).then(function (data){
$scope.datainput=data.data;
console.log($scope.datainput);
},function (error){
console.log("big err");
});
$http({
method: 'GET',
url: 'Data/config.json'
}).then(function (config){
$scope.dataconfig=config.data;
//console.log($scope.datainput);
},function (error){
console.log("config error");
});
$scope.refresh = function(){
location.reload();
}
$scope.init = function(canvasid) {
var json=JSON.parse(JSON.stringify($scope.datainput));
var jsonconfig=JSON.parse(JSON.stringify($scope.dataconfig));
var n = $scope.givenNumber;
var cheight=jsonconfig[3].value;
var cwidth=jsonconfig[4].value;
$scope.rows = [];
var newx;
var newy;
for(var k=0;k<=1;k++){
var c =document.getElementById(canvasid);
c.width=cwidth;
c.height=cheight;
Это ошибка, когда я использую ng-init
"angular.min.js: 127 TypeError: Невозможно прочитать свойство 'value' из undefined в b. $ Scope.init