Это работает для Camunda 7.10.
Чтобы заполнить textarea
, форма должна использовать события формы Camunda
<script cam-script type="text/form-script">
var variableManager = camForm.variableManager;
var jobRequestInfo = $scope.jobRequestInfo = {};
var jobDescription = $scope.jobDescription = {};
camForm.on( 'form-loaded', function() {
camForm.variableManager.fetchVariable( 'jobRequestInfo' );
camForm.variableManager.fetchVariable( 'jobDescription' );
});
camForm.on( 'variables-fetched', function() {
$scope.jobRequestInfo = camForm.variableManager.variable( 'jobRequestInfo' ).value;
$scope.jobDescription = camForm.variableManager.variable( 'jobDescription' ).value;
});
camForm.on( 'variables-applied', function() {
$( '[name="jobDescription"]' ).val( $scope.jobDescription );
});
camForm.on( 'submit', function( ev ) {
;
});
</script>
...
<div class="form-group">
<label for="jobDescription">Job Description</label>
<textarea class="form-control"
ng-model="jobRequestInfo.description"
name="jobDescription"
rows="20">
</textarea>
</div>
...
Существует две переменные области действия:
jobDescription
a String
, который заполняется начальным значением. jobRequestInfo
POJO с полем description
, который заполняется последним отредактированным значением.
Обратите внимание, что Camunda не полностью поддерживает все типы HTML, такие как переключатели, поэтому помимо базовых форм обычно необходимо использовать события формы Camunda.
Кроме того, с использованием угловой интеграции и переменных POJOкак указано выше, позволяет значительно сократить переменные процесса.