angular.js - Masalah bahawa teg input angularjs hanya boleh menghantar data dalam satu arah
仅有的幸福
仅有的幸福 2017-05-15 16:49:46
0
2
687

Antara muka saya

 <ion-view title = "{{roomName}}" style = "height:90%;margin-top: 45px "  ng-init = "init()">
            <ion-pane>
            <ion-content zooming = "true"  class = "no-header">
                <ion-list>
                    <ion-item class="item item-input-inset">
                        <label class="item-input-wrapper">
                            <input type="text" placeholder="Your Message To Send" ng-model = "myMessage">
                        </label>
                        <button class="button button-small" ng-click = "sendMyMessage()">
                            发送
                        </button>
                    </ion-item>
                </ion-list>
            </ion-content>
            </ion-pane>

            <ion-pane style = "margin-top: 55px">
            <ion-content zooming = "true" class = "no-header" style = "margin-bottom: 50px">
                <ion-list>
                    <ion-item class = "item item-avatar-left my-item"
                             collection-repeat = "message in messages"
                             collection-item-width="'100%'"
                             collection-item-height="75">
                        <img ng-src="{{message.user.avatarUrl}}">
                        <h2>{{message.user.name}}:</h2>
                        <p>{{message.content}}</p>

                    </ion-item>
                </ion-list>

            </ion-content>
        </ion-pane>
        </ion-view>

Pengawal saya

atMoon.controller('roomCtrl',['$scope','myService', function ($scope, myService) {


    $scope.sendMyMessage = function () {
        console.log($scope.myMessage)
        myService.sendMyMessage($scope, $scope.myMessage)
    }
    $scope.init = function () {
        myService.getMessages($scope);
    }
}])

$scope.myMessage yang dicetak sentiasa tidak ditentukan Jika saya menulis $scope.myMessage = "xxxx" dalam pengawal, ia boleh dipaparkan dalam antara muka, jadi data hanya boleh pergi dari model ke paparan, bukan. dari pandangan kepada model Sila Terima kasih banyak atas jawapannya

仅有的幸福
仅有的幸福

membalas semua(2)
洪涛

Saya mengesyaki anda telah ditipu oleh warisan prototaip skop

Arahan seperti ion-content ini mempunyai skopnya sendiri Kemudian anda menulis ng-model="myMessage" dalam paparan Sebenarnya, kandungan yang anda isi dalam kotak input diletakkan pada skop ion-item dan anda roomCtrl. dalam skop myMessage masih undefined; dan selepas anda menetapkan nilai kepada myMessage dalam pengawal, kerana tiada atribut ion-item pada skop myMessage, ia akan berubah daripada Carian pada rantai prototaip, dan kemudian cari roomCtrl pada skop myMessage.

Ini adalah penyelesaian saya:

$scope.ctrlScope = $scope
<input ng-model="ctrlScope.myMessage" />
小葫芦

Saya juga menghadapi masalah ini Nampaknya masalah dengan versi angular.js-1.3.0 Ia tidak muncul dalam versi yang lebih rendah diuji dan lulus Saya tidak tahu Mengapa (mungkin versi baharu Angular telah mengoptimumkan jam tangan, terlalu banyak jam tangan akan menjejaskan kecekapan):

Tetapkan dalam pengawal
$scope.Messages={myMessage:""}

 $scope.sendMyMessage = function () {
        console.log($scope.Messages.myMessage);
    }

<input ng-model="Messages.myMessage" />


另外我用angular.js正在开发webapp,可以交流下,http://php.xlanlab.com/webapp/mobile-angular-ui-master/my/index.html
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan