angularjs Angular 文本区域不能用默认值填充

jv4diomz  于 2023-05-12  发布在  Angular
关注(0)|答案(4)|浏览(122)

我正在尝试为我的Angular textarea设置一个默认值。我想我已经尽力了。什么都不管用。我有一个html模板

<textarea ng-model="title" required class="textbox" id="feedbackInput" ng-init="title= initvalue"></textarea>

连接到组件\控制器:

angular
    .module('feedbackForm')
    .component('feedbackForm', {
        templateUrl: 'feedback-form/feedback-form.template.html',
        controller: ['$scope', '$routeParams', 'Feedback', '$localStorage',
            function FeedbackFormController($scope, $routeParams, Feedback, $localStorage) {
                console.log('FeedbackForm Controller');
                var self = this;
                var feedback = "";
                $scope.initvalue = "hhhhhh";
            }
        ]
    });

它不工作。它没有填满我的文本区域。我试着用这个,self,$ctrl...任何想法如何设置一个默认值在我的textarea没有改变控制器太多。

cqoc49vn

cqoc49vn1#

您需要在相应的控制器中将默认值设置为textarea的ng-model或使用ng-init。
示例(使用ng-init):

<textarea ng-init='foo="Some default value"' ng-model='foo'></textarea>

或(不使用ng-init):

<textarea ng-init='foo="Some default value"'>{{foo}}</textarea>
sdnqo3pr

sdnqo3pr2#

尝试这样做

<textarea ng-model="title" required class="textbox" id="feedbackInput" ng-init="title= 'initvalue'"></textarea>

或在控制器中这样尝试

$scope.title='Default value'

希望这对你有帮助

sycxhyv7

sycxhyv73#

我在angular中使用material UI做了类似的事情。这就是我所做的:

<form [formGroup]="demoFormGroup"> 
    <mat-form-field>
       <textarea matInput formControlName="eventBody" placeholder="Your Message" cdkTextareaAutosize cdkAutosizeMinRows="6"></textarea>
     </mat-form-field>
</form>

.ts文件中,在ngOnInit内部,

ngOnInit(): void{
   this.demoFormGroup= new FormGroup({
      ....
      ....
      eventBody: new FormControl("Demo Text", [Validators.required]), 
    });
}

相关问题