LoginSignup
5
3

More than 3 years have passed since last update.

kintoneのカスタマイズ効率をあげよう。脱超初心者編1

Last updated at Posted at 2020-02-28

Qiitaではなく、下記のサイトに移行しました
続きも掲載していますのでこちらをご覧ください

kintoneのカスタマイズ効率を上げたいと思っている人向けの記事です。
例:JavaScriptファイルの手動アップロードが面倒だと思っている人
  JSEdit for kintoneを使っている人
  Visual Studio Codeを使ってワンアップしたい人
  customize-uploaderのアップロード反映まで長いと思っている人

Visual Studio Codeのインストール

以下からダウンロードしてインストールします。
https://code.visualstudio.com/

Node.jsのインストール

以下からダウンロードしてインストールします。
https://nodejs.org/ja/

Visual Studio Codeの設定

Prettier

やってくれること

こんなコードを
image.png

このように整形してくれます。
image.png

インストールと設定

Prettier - Code formatterを開き、Installをクリックしてインストールします。
customize0.png

Overviewに書いてある内容を見ると、デフォルトのフォーマッターを指定できます。
とりあえず最小構成で導入したいのでJavaScriptファイルのみ保存時にPrettierで整形します。

settings.jsonを開いて以下の内容を貼り付けます。すでに設定が存在する人は追記してください。
settings.jsonの開き方がわからない人はこちら

{
  "editor.formatOnSave": false,
  "[javascript]": {
    "editor.formatOnSave": true,
    "editor.defaultFormatter": "esbenp.prettier-vscode"
  }
}

またnpmのPrettierをインストールしておくと、そのPrettierを利用して整形してくれるようです。こちらもインストールしておきます。

まずはエクスプローラー上からプロジェクトフォルダを作りましょう。
例えば「C:\Users\user-name\Documents\git\customize-example」です。

Visual Studio Codeで作成したフォルダ(例の場合はcustomize-example)を開きます。
Ctrl + @を押してターミナルを表示し、以下のコマンドを実行します。

> npm init
> npm install --save-dev prettier

npm init後に入力を求められますが、よくわからない人は全部Enterで大丈夫です。

ESLint

やってくれること

コードのおかしいところを指摘してくれます。
ESLintなしの状態でもある程度指摘してくれますが、ESLintを入れるとさらに指摘してくれる範囲が拡がります。
image.png

インストールと設定

ESLintを開き、Installをクリックしてインストールします。

これだけだと動作しないので、npmのESLintもインストールします。
またサイボウズオススメのESLintの設定があるのでこれも合わせてインストールします。
先ほどと同じフォルダ上で以下のコマンドを実行します。

> npm install --save-dev eslint @cybozu/eslint-config

ESLintの設定ファイルを作成します。ファイル名は.eslintrc.jsにします。
kintoneはIE11も動作対象なのでES5のルールにしておきましょう。

.eslintrc.js
module.exports = {
  extends: ["@cybozu/eslint-config/presets/kintone-customize-es5-prettier"]
};

customize-uploaderのインストール

カスタマイズファイルの反映を自動でやってくれるcustomize-uploaderをインストールします。

> npm install --save-dev @kintone/customize-uploader

local-web-serverのインストール

customize-uploaderも反映までは数秒かかって手間なので、ローカルにWebサーバーを立てます。

> npm install --save-dev local-web-server

カスタマイズ反映の準備

customize-uploader用のファイルを作ります。
まずはテスト用です。アプリIDは書き換えてください。

manifest.dev.json
{
  "app": "アプリID",
  "scope": "ADMIN",
  "desktop": {
    "js": ["https://127.0.0.1:8000/index.js"],
    "css": []
  },
  "mobile": {
    "js": [],
    "css": []
  }
}

次は本番用です。

manifest.prod.json
{
  "app": "アプリID",
  "scope": "ALL",
  "desktop": {
    "js": ["index.js"],
    "css": []
  },
  "mobile": {
    "js": [],
    "css": []
  }
}

ここまでの作業でファイル構成は以下のようになっています。
customize9.png

次にpackage.jsonにws, dev, prodの3行を追加します。
ドメイン名とユーザー名は書き換えてください。

package.json
  "scripts": {
    "ws": "ws --https",
    "dev": "kintone-customize-uploader --domain xxx.cybozu.com --username xxx manifest.dev.json",
    "prod": "kintone-customize-uploader --domain xxx.cybozu.com --username xxx manifest.prod.json",
    "test": "echo \"Error: no test specified\" && exit 1"
  },

テスト時のカスタマイズ反映

以下のコマンドを実行するとローカルのindex.jsを参照します。

> npm run dev

image.png

ブラウザがアクセスできるようにlocal-web-serverを起動します。

> npm run ws

カスタマイズが反映されない場合は https://127.0.0.1:8000/ にアクセスしてください。
以下のような画面が表示されるので、「詳細設定」をクリック、「127.0.0.1 にアクセスする(安全ではありません)」をクリックしてください。
これで反映されるはずです。
image.png

本番時のカスタマイズ反映

以下のコマンドを実行するとカスタマイズファイルをアップロードします。

> npm run prod

image.png

5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3