Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
clasp導入の落とし穴/ installing clasp
Search
m-haketa
May 20, 2019
Programming
0
1.6k
clasp導入の落とし穴/ installing clasp
GASのローカル開発環境であるclaspを導入するときに、実際に直面したトラブルと、その解決方法をまとめました。
m-haketa
May 20, 2019
Tweet
Share
More Decks by m-haketa
See All by m-haketa
freeeapiヘルパー(TypeScript、GAS向け)の紹介/freee-api-helper
mhaketa
0
690
typescript-freeeapi.pdf
mhaketa
0
350
Other Decks in Programming
See All in Programming
Site Reliability Engineering for GMO
pyama86
7
1k
Goのエラースタックトレースの歴史と今後
sonatard
7
1k
Rails と人魚の話/rails-and-mermaid
sanfrecce_osaka
0
100
코틀린으로 멀티플랫폼 만들기
pangmoo
0
140
Elm 0.19.0 Changes
bkuhlmann
0
490
GitHub Actionsで泣かないためにやっておきたい設定 / Recommended GHA settings to avoid crying
pinkumohikan
3
520
Rubyでたのしむクリエイティブコーディング/Enjoy Creative coding with Ruby
chobishiba
1
170
Ruby GitHub Packages
bkuhlmann
0
630
ADRを一年運用してみた/adr_after_a_year
hanhan1978
7
2.3k
SwiftUIで使いやすいToastの作り方 / How to build a Toast system which is easy to use in SwiftUI
lovee
3
130
try! Swift Tokyo 2024のLT枠に採択されたプロポーザルを出すときに考えていたこと
ski
0
350
PHP8.3の機能を振り返る / Review of PHP 8.3 features
seike460
PRO
1
110
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
60
14k
Teambox: Starting and Learning
jrom
128
8.4k
Optimising Largest Contentful Paint
csswizardry
8
2.3k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
9
8.3k
The Pragmatic Product Professional
lauravandoore
25
5.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
322
20k
A Modern Web Designer's Workflow
chriscoyier
689
190k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
244
20k
A designer walks into a library…
pauljervisheath
200
23k
Agile that works and the tools we love
rasmusluckow
325
20k
Building Flexible Design Systems
yeseniaperezcruz
319
37k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
Transcript
clasp導入の落とし穴
2 自己紹介 名前: 羽毛田 睦土(はけた まこと) 仕事: 会計事務所 経営 エクセルセミナー
運営 ソフトウエア 開発 Twitter: @excelspeedup
3 Clasp導入手順 1. Node.jsインストール 2. claspインストール 3. GAS環境にログイン 4. 自動補完用ファイルのインストール
5. GASプログラムの同期準備 6. プログラム作成・アップロード
Step2,3,4 4 Clasp設定に潜む落とし穴 その1 1. Node.jsインストール 2.claspインストール 3. GAS環境にログイン 4.
自動補完用ファイルのインストール 5. GASプログラムの同期準備 6. プログラム作成・アップロード
Step2,3,4 2種類のインストール方法 5 freee残高ダウンロード Analytics日次自動通知 Twitter日次フォロワー取得 clasp clasp プロジェクト npm
install ... -g npm install ... –save-dev 1. グローバルインストール 2. ローカルインストール
Step2,3,4 初心者向けにはどちらがおすすめ? 6 npm install @google/clasp -g npm install @google/clasp
--save-dev 1. グローバルインストール 2. ローカルインストール
Step2,3,4 初心者向けにはどちらがおすすめ? 7 npm install @google/clasp -g npm install @google/clasp
--save-dev 1. グローバルインストール 2. ローカルインストール ※初心者限定
Step2,3,4 ローカルインストールをするとどうなる? 8
Step2,3,4 自動補完用ファイルはローカル必須 9 npm install @types/google-apps-script -g npm install @types/google-apps-script
--save-dev 1. グローバルインストール 2. ローカルインストール
Step5,6 10 落とし穴 その2 1. Node.jsインストール 2. claspインストール 3. GAS環境にログイン
4. 自動補完用ファイルのインストール 5.GASプログラムの同期準備 6. プログラム作成・アップロード
Step5,6 同期の準備をする 11 (プロジェクトルート フォルダ) test.ts src test.ts clasp create
Googleサーバ clasp push clasp push clasp create -rootDir ./src
Step5,6 初心者にはどちらがおすすめ? 12 clasp create clasp create –rootDir ./src 1.
プロジェクトルートフォルダをrootDirに指定 2. srcフォルダをrootDirに指定
Step5,6 初心者にはどちらがおすすめ? 13 1. プロジェクトルートフォルダをrootDirに指定 2. srcフォルダをrootDirに指定 clasp create clasp
create –rootDir ./src
Step5,6 rootDir指定をしないとどうなる? 14
Step5,6 rootDirとclasp pushの関係 15 (プロジェクトフォルダ) Node_modules 大量のjsファイル -rootDir ./src (プロジェクトフォルダ)
test.ts -rootDir . Node_modules src test.ts jsファイル Googleサーバ clasp push
Step ? 16 落とし穴 その3 1. Node.jsインストール 2. claspインストール 3.
GAS環境にログイン 4. 自動補完用ファイルのインストール 5. GASプログラムの同期準備 6. プログラム作成・アップロード
Step ? claspコマンド実行時にエラー 17
Step ? 文法チェックが明らかにおかしい 18
Step ? Npmパッケージをインストールし直す 19 npm uninstall @google/clasp –g npm install
@google/clasp -g npm install 私の環境では、これで解決しました
20 claspをとりあえず動かしたいときには? このブログに導入手順をまとめてあります https://gas.excelspeedup.com/
ここから未公開スライド 21
Step2,3,4 ローカルインストールするときは 22 npm install @google/clasp --save-dev npm run clasp
login "scripts": { ... “clasp”: “clasp” }, package.json すべてのclaspコマンドの前に 「npm run」を付ける p8の補足
Step5,6 RootDirを指定しないときは 23 node_modules/** .claspignore (プロジェクトフォルダ) Node_modules jsファイル test.ts Push対象から除外される
p14の補足
ありがとうございました! 24