1

CardBoard の最も単純な実装があります。

<!DOCTYPE html>
<html>
<head>
    <title>CardBoard Example</title>

    <script type="text/javascript" src="/apps/2.0p5/sdk.js"></script>

    <script type="text/javascript">
        Rally.onReady(function() {
            Ext.define('CustomApp', {
                extend: 'Rally.app.App',

                launch: function() {
                    var cardBoardConfig = {
                        xtype: 'rallycardboard',
                        types: ['User Story'],
                        attribute: "ScheduleState"
                    };

                    this.add(cardBoardConfig);
                }
            });

            Rally.launchApp('CustomApp', {
                name: 'CardBoard Example'
            });
        });
    </script>

    <style type="text/css">
    </style>
</head>
<body></body>
</html>

ドラッグ アンド ドロップ操作を行うたびに、非常に厄介な問題が発生します。ページが更新されます。

また、ページのリロードを妨げるバグに気付きました。再現する手順:

  1. 上記のコードでページを開きます。
  2. プロジェクトのスコープを変更します。
  3. カードをドラッグ アンド ドロップします。
  4. ページの更新を妨げる JavaScript エラーがブラウザ コンソールに表示されます。

javascript Rally SDK エラーがない場合に、カードのドラッグ アンド ドロップ操作後にページが更新されないようにするにはどうすればよいですか?

4

2 に答える 2

0

これは、親ウィンドウによるobjectUpdate メッセージの処理が不十分であることが原因です。カードがドロップされると、objectUpdateメッセージは (正しく) 起動されますが、カスタム HTML パネルはアプリを更新することでそれを処理します。Rally にバグを報告して修正しました。

この動作を上書きするには、これを の後に追加しますRally.onReady:

if(window.parent) {
    window.parent.RALLY.ui.dashboard.PanelPanel.prototype.onObjectModificationMessage = function(){};
}

したがって、コード全体は次のようになります。

<!DOCTYPE html>
<html>
<head>
    <title>CardBoard Example</title>

    <script type="text/javascript" src="/apps/2.0p5/sdk.js"></script>

    <script type="text/javascript">
        Rally.onReady(function() {

            if(window.parent) {
                 window.parent.RALLY.ui.dashboard.PanelPanel.prototype.onObjectModificationMessage = function(){};
            }

            Ext.define('CustomApp', {
                extend: 'Rally.app.App',

                launch: function() {
                    var cardBoardConfig = {
                        xtype: 'rallycardboard',
                        types: ['User Story'],
                        attribute: "ScheduleState"
                    };

                    this.add(cardBoardConfig);
                }
            });

            Rally.launchApp('CustomApp', {
                name: 'CardBoard Example'
            });
        });
    </script>

    <style type="text/css">
    </style>
</head>
<body></body>
</html>
于 2013-05-07T12:49:50.830 に答える
0

これは同様の質問で、あなたにも当てはまるはずのわずかに異なる答えがあります:

アプリはデバッグ モードでは期待どおりに動作しますが、Rally 環境ではクラッシュします

于 2013-05-07T15:40:27.643 に答える