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.9k
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
860
typescript-freeeapi.pdf
mhaketa
0
410
Other Decks in Programming
See All in Programming
ファインディの テックブログ爆誕までの軌跡
starfish719
2
1.1k
Grafana Cloudとソラカメ
devoc
0
170
SpringBoot3.4の構造化ログ #kanjava
irof
2
1k
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
110
バックエンドのためのアプリ内課金入門 (サブスク編)
qnighy
8
1.8k
Unity Android XR入門
sakutama_11
0
160
2024年のkintone API振り返りと2025年 / kintone API look back in 2024
tasshi
0
220
XStateを用いた堅牢なReact Components設計~複雑なClient Stateをシンプルに~ @React Tokyo ミートアップ #2
kfurusho
1
910
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
490
富山発の個人開発サービスで日本中の学校の業務を改善した話
krpk1900
4
390
仕様変更に耐えるための"今の"DRY原則を考える / Rethinking the "Don't repeat yourself" for resilience to specification changes
mkmk884
0
190
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
0
160
Featured
See All Featured
The Language of Interfaces
destraynor
156
24k
Faster Mobile Websites
deanohume
306
31k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Thoughts on Productivity
jonyablonski
69
4.5k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
9
440
A Tale of Four Properties
chriscoyier
158
23k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
Gamification - CAS2011
davidbonilla
80
5.1k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
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