GithubHelp home page GithubHelp logo

clasp-sample's Introduction

はじめに

google/claspを用いたgasのサンプル。
以下にインストール〜gasとしてGoogleDriveへpushするまでの手順を記載します。

参考記事

以下の記事を参考にさせていただきました。
ありがとうございました。

では本題へ。

手順

インストール・ログイン

# インストール
yarn add global @google/clasp
# npm i @google/clasp -g

# ログイン
clasp login
# この後、Googleアカウントのパスワードを入力

ログイン後、ブラウザの新規タブが開き、
claspからの操作の許可を求められるので許可します。

Google Apps Script APIの有効化

以下からGoogle App Script APIの有効化を行います。
https://script.google.com/home/usersettings

アプリの作成・デプロイ

# 作成
clasp create app-name

GAS用のフォルダを作成済みの場合はclasp create .でもおkです。

今回テスト用に以下のソースコードを作成します。

src/sample.js

// @ts-nocheck
function echoMessage(msg) {
  Logger.log(msg);
}

function main() {
  ["hello", "world", "!"].forEach(function (msg) {
    echoMessage(msg);
  });
}

ここまで実装すればデプロイできるのですが、
このままだとnode_modulesなど、
不要なファイルも一緒にデプロイされてしまいます。
(時間がかかる...)

そのため、.claspignoreの作成・設定を行います。

.claspignore

**/**
!src/*.js
!appsscript.json

上記ファイルの作成が終わったらデプロイ実施、
そのままデプロイされているか確認します。

# デプロイ(push)
clasp push

# デプロイが終わったら、ブラウザからGASとして出力されているか確認
clasp open

src/sample.gsというファイル名が作成されていたら、
デプロイおkです。

GitHubへのpush

不要なファイルをコミットしないよう、
.gitignoreを作成・設定します。

.gitignore

node_modules/
.vscode/
.clasp.json

VSCode使わない方は.vscode/は不要になります。
これであとはコミットと自分のリポジトリへpushするだけでおkです。
お疲れ様でした。

# 念のため初期化〜コミット
git init
git add -A
git commit -m "{なにかコメントを}"

# push
git push

ファイルの説明

.clasp.json

{"scriptId":""}

clasp createした際に作成されます。
キーが格納されているため、誤ってGitHubに公開しないよう、
.gitignoreに追記しておくこと。

最後に

以下の記事を参考に、TypeScriptで書くのも良さそう。
てか、TSの方が良いだろうな...

clasp-sample's People

Contributors

zakizaki-ri9 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.