質問編集履歴

4 補足しました。

aoshima.natsuki

aoshima.natsuki score 33

2015/11/18 17:01  投稿

ほui-sortableを使った要素の並び替えと保存の仕方について
ui-sortableを使った要素の並び替えと保存の仕方について
AngularJSを採用したアプリケーションで、ui-sortableを使った要素の並び替えと保存をしようとしています。リファレンスを読みつつ並び替え後の順番を出力させるところまで実装したのですが、データを保存するとことで詰まってしまったので質問させてください。
AngularJSを採用したアプリケーションで、ui-sortableを使った要素の並び替えと保存をしようとしています。リファレンスを読みつつ並び替え後の順番を出力させるところまで実装したのですが、データを保存するとことが自信がないのでご教授ください。
コード中の "console.debug tmpList" で "1, 2, 3, 4, 5, 6, 7" のようにconsoleに並び替え後の出力はできているのですが、配列から目的のデータが取り出せずその先の保存の仕方がわかりません...
```javascript
newList = { text: item.text, order: item.value }
List.save($scope.newList)
```
のような形をループを回した中で行おうとしているのですがうまくいきません...
そもそもループ内で保存などせず、もっと簡潔な書き方があれば教えていただきたいです。
よろしくお願いいたします。
以下のようにfromとtoを用意し、iの個数分だけwhileでループを回しています。このような書き方で問題ないでしょうか。一応、意図している動作は行われているかと思うのですが書き方に自信がありません... このままで問題ないでしょうか?そもそもwhileなど使わない方法でもっと良い書き方などありますでしょうか?よろしくお願いいたします。
= = =
《controller》
```javascript
tmpList = []
i = 1
while i <= 7
 tmpList.push
   text: 'Item ' + i
   value: i
 i++
$scope.list = tmpList
$scope.sortableOptions =
 stop: (e, ui) ->
   logEntry = tmpList.map((i) ->
     i.value
   ).join(', ')
   console.debug tmpList
   from = 0
   to = i - 2
   while from <= to
     $scope.newList = { text: tmpList[from].text, order: tmpList[from].value }
     Item.update($scope.newList)
     console.debug $scope.newList
     from++
   return
return
```
《view》
```html
<ul ui-sortable="sortableOptions" ng-model="list">
 <li ng-repeat="item in list">{{item.text}}</li>
</ul>
```
  • JavaScript

    36587 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • AngularJS

    648 questions

    AngularJSはオープンソースのJavaScriptフレームワークです。ブラウザ上で動作するウェブアプリケーションの開発にMVCアーキテクチャを取り入れることを目的としています。

  • CoffeeScript

    166 questions

    CoffeeScriptはプログラミング言語です。シンタックスシュガーの導入により、JavaScriptのコードに変換された後動作します。JavaScriptに比べ、可読性と簡潔性が向上しています。

3 補足しました。

aoshima.natsuki

aoshima.natsuki score 33

2015/11/18 16:48  投稿

ほui-sortableを使った要素の並び替えと保存の仕方について
AngularJSを採用したアプリケーションで、ui-sortableを使った要素の並び替えと保存をしようとしています。リファレンスを読みつつ並び替え後の順番を出力させるところまで実装したのですが、データを保存するとことで詰まってしまったので質問させてください。
コード中の "console.debug tmpList" で "1, 2, 3, 4, 5, 6, 7" のようにconsoleに並び替え後の出力はできているのですが、配列から目的のデータが取り出せずその先の保存の仕方がわかりません...
```javascript
newList = { text: item.text, order: item.value }
List.save($scope.newList)
```
のような形をループを回した中で行おうとしているのですがうまくいきません...
そもそもループ内で保存などせず、もっと簡潔な書き方があれば教えていただきたいです。
よろしくお願いいたします。
= = =
《controller》
```javascript
tmpList = []
i = 1
while i <= 7
 tmpList.push
   text: 'Item ' + i
   value: i
 i++
$scope.list = tmpList
$scope.sortableOptions =
 stop: (e, ui) ->
   logEntry = tmpList.map((i) ->
     i.value
   ).join(', ')
   console.debug tmpList
   return
return
```
《view》
```html
<ul ui-sortable="sortableOptions" ng-model="list">
 <li ng-repeat="item in list">{{item.text}}</li>
</ul>
```  
 
補足:  
ひとまず以下のように保存しています。もっといい書き方があれば教えていただきたいです。。  
 
```javascript  
a = 0  
i = i - 2  
while a <= i  
 $scope.newList = { text: tmpList[a].text, order: tmpList[a].value }  
 Item.update($scope.newList).$promise.then (response) ->  
 console.debug $scope.newList  
 a++  
return  
```
  • JavaScript

    36587 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • AngularJS

    648 questions

    AngularJSはオープンソースのJavaScriptフレームワークです。ブラウザ上で動作するウェブアプリケーションの開発にMVCアーキテクチャを取り入れることを目的としています。

  • CoffeeScript

    166 questions

    CoffeeScriptはプログラミング言語です。シンタックスシュガーの導入により、JavaScriptのコードに変換された後動作します。JavaScriptに比べ、可読性と簡潔性が向上しています。

2 補足しました。

aoshima.natsuki

aoshima.natsuki score 33

2015/11/18 16:45  投稿

ui-sortableを使った要素の並び替えと保存の仕方について
ほui-sortableを使った要素の並び替えと保存の仕方について
AngularJSを採用したアプリケーションで、ui-sortableを使った要素の並び替えと保存をしようとしています。リファレンスを読みつつ並び替え後の順番を出力させるところまで実装したのですが、データを保存するとことで詰まってしまったので質問させてください。
コード中の "console.debug tmpList" で "1, 2, 3, 4, 5, 6, 7" のようにconsoleに並び替え後の出力はできているのですが、配列から目的のデータが取り出せずその先の保存の仕方がわかりません...
```javascript
newList = { text: item.text, order: item.value }
List.save($scope.newList)
```
のような形をループを回した中で行おうとしているのですがうまくいきません...
そもそもループ内で保存などせず、もっと簡潔な書き方があれば教えていただきたいです。
よろしくお願いいたします。
= = =
《controller》
```javascript
tmpList = []
i = 1
while i <= 7
 tmpList.push
   text: 'Item ' + i
   value: i
 i++
$scope.list = tmpList
$scope.sortableOptions =
 stop: (e, ui) ->
   logEntry = tmpList.map((i) ->
     i.value
   ).join(', ')
   console.debug tmpList
   return
return
```
《view》
```html
<ul ui-sortable="sortableOptions" ng-model="list">
 <li ng-repeat="item in list">{{item.text}}</li>
</ul>
```
補足:
ひとまず以下のように書いています。もっといい書き方があれば教えていただきたいです。。
ひとまず以下のように保存しています。もっといい書き方があれば教えていただきたいです。。
```javascript
a = 0
i = i - 2
while a <= i
 $scope.newList = { text: tmpList[a].text, order: tmpList[a].value }
 # Item.update($scope.newList).$promise.then (response) ->
 Item.update($scope.newList).$promise.then (response) ->
 console.debug $scope.newList
 a++
return
```
  • JavaScript

    36587 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • AngularJS

    648 questions

    AngularJSはオープンソースのJavaScriptフレームワークです。ブラウザ上で動作するウェブアプリケーションの開発にMVCアーキテクチャを取り入れることを目的としています。

  • CoffeeScript

    166 questions

    CoffeeScriptはプログラミング言語です。シンタックスシュガーの導入により、JavaScriptのコードに変換された後動作します。JavaScriptに比べ、可読性と簡潔性が向上しています。

1 補足しました。

aoshima.natsuki

aoshima.natsuki score 33

2015/11/18 16:44  投稿

ui-sortableを使った要素の並び替えと保存の仕方について
AngularJSを採用したアプリケーションで、ui-sortableを使った要素の並び替えと保存をしようとしています。リファレンスを読みつつ並び替え後の順番を出力させるところまで実装したのですが、データを保存するとことで詰まってしまったので質問させてください。
コード中の "console.debug tmpList" で "1, 2, 3, 4, 5, 6, 7" のようにconsoleに並び替え後の出力はできているのですが、配列から目的のデータが取り出せずその先の保存の仕方がわかりません...
```javascript
newList = { text: item.text, order: item.value }
List.save($scope.newList)
```
のような形をループを回した中で行おうとしているのですがうまくいきません...
そもそもループ内で保存などせず、もっと簡潔な書き方があれば教えていただきたいです。
よろしくお願いいたします。
= = =
《controller》
```javascript
tmpList = []
i = 1
while i <= 7
 tmpList.push
   text: 'Item ' + i
   value: i
 i++
$scope.list = tmpList
$scope.sortableOptions =
 stop: (e, ui) ->
   logEntry = tmpList.map((i) ->
     i.value
   ).join(', ')
   console.debug tmpList
   return
return
```
《view》
```html
<ul ui-sortable="sortableOptions" ng-model="list">
 <li ng-repeat="item in list">{{item.text}}</li>
</ul>
```
```
補足:
ひとまず以下のように書いています。もっといい書き方があれば教えていただきたいです。。
```javascript
a = 0
i = i - 2
while a <= i
 $scope.newList = { text: tmpList[a].text, order: tmpList[a].value }
 # Item.update($scope.newList).$promise.then (response) ->
 console.debug $scope.newList
 a++
return
```
  • JavaScript

    36587 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • AngularJS

    648 questions

    AngularJSはオープンソースのJavaScriptフレームワークです。ブラウザ上で動作するウェブアプリケーションの開発にMVCアーキテクチャを取り入れることを目的としています。

  • CoffeeScript

    166 questions

    CoffeeScriptはプログラミング言語です。シンタックスシュガーの導入により、JavaScriptのコードに変換された後動作します。JavaScriptに比べ、可読性と簡潔性が向上しています。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る