質問するログイン新規登録

質問編集履歴

1

cloud9サンプルコードのhtmを追加

2017/09/18 14:37

投稿

razona
razona

スコア12

title CHANGED
File without changes
body CHANGED
@@ -152,6 +152,108 @@
152
152
  });
153
153
 
154
154
  ```
155
+ ```html
156
+ <!doctype html>
157
+ <html lang="en" ng-app>
158
+ <head>
159
+ <title>Chat Example</title>
160
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
161
+ <link rel="stylesheet" href="/css/bootstrap.min.css">
162
+ <link rel="stylesheet" href="/css/bootstrap-responsive.min.css">
163
+ <style>
164
+ body {
165
+ padding-top: 60px;
166
+ }
167
+ </style>
168
+ <script>
169
+ function ChatController($scope) {
170
+ var socket = io.connect();
171
+
172
+ $scope.messages = [];
173
+ $scope.roster = [];
174
+ $scope.name = '';
175
+ $scope.text = '';
176
+
177
+ socket.on('connect', function () {
178
+ $scope.setName();
179
+ });
180
+
181
+ socket.on('message', function (msg) {
182
+ $scope.messages.push(msg);
183
+ $scope.$apply();
184
+ });
185
+
186
+ socket.on('roster', function (names) {
187
+ $scope.roster = names;
188
+ $scope.$apply();
189
+ });
190
+
191
+ $scope.send = function send() {
192
+ console.log('Sending message:', $scope.text);
193
+ socket.emit('message', $scope.text);
194
+ $scope.text = '';
195
+ };
196
+
197
+ $scope.setName = function setName() {
198
+ socket.emit('identify', $scope.name);
199
+ };
200
+ }
201
+ </script>
202
+ </head>
203
+ <body>
204
+ <div class="container" ng-controller="ChatController">
205
+ <div class="navbar navbar-fixed-top navbar-inverse">
206
+ <div class="navbar-inner">
207
+ <div class="pull-right">
208
+ <a href="https://c9.io" class="brand">Cloud9 IDE</a>
209
+ </div>
210
+ </div>
211
+ </div>
212
+ <div class="page-header">
213
+ <h1>Chat Example</h1>
214
+ </div>
215
+ <div class="row">
216
+ <div class="span3">
217
+ <ul class="nav nav-list well">
218
+ <li class="nav-header">Local Users</li>
219
+ <li ng-repeat="user in roster" ng-bind="user">
220
+ </li>
221
+ </ul>
222
+ </div>
223
+ <div class="span9">
224
+ <table class="table table-striped table-bordered">
225
+ <thead>
226
+ <tr>
227
+ <th class="span2">Name</th>
228
+ <th class="span7">Text</th>
229
+ </tr>
230
+ </thead>
231
+ <tbody>
232
+ <tr ng-repeat="msg in messages">
233
+ <td class="span2" ng-bind="msg.name"></td>
234
+ <td class="span7" ng-bind="msg.text"></td>
235
+ </tr>
236
+ </tbody>
237
+ </table>
238
+ <div class="row controls">
239
+ <form ng-submit="send()">
240
+ <div class="span2"><input type="text" class="input-block-level" ng-model="name" ng-change="setName()" placeholder="Your Name"></div>
241
+ <div class="input-append span7">
242
+ <input type="text" class="span6" ng-model="text" placeholder="Message">
243
+ <input type="submit" class="span1 btn btn-primary" value="Send" ng-disabled="!text">
244
+ </div>
245
+ </form>
246
+ </div>
247
+ </div>
248
+ </div>
249
+ </div>
250
+ <script src="/socket.io/socket.io.js"></script>
251
+ <script src="/js/jquery.min.js"></script>
252
+ <script src="/js/bootstrap.min.js"></script>
253
+ <script src="/js/angular.min.js"></script>
254
+ </body>
255
+ </html>
256
+ ```
155
257
  逆に、cloud9のサンプルコードのindex.htmlをそのまま持ってきたところ、表示はできたもののsocket接続ができませんでした。
156
258
 
157
259
  ###補足情報(言語/FW/ツール等のバージョンなど)