From f88a7889a4e1e2aca20cd149c8d44071613ad7b1 Mon Sep 17 00:00:00 2001 From: Andrea Moretti Date: Fri, 22 Apr 2016 09:27:38 +0200 Subject: [PATCH] react: use node_modules version of eslint or global if not available --- layers/+frameworks/react/packages.el | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/layers/+frameworks/react/packages.el b/layers/+frameworks/react/packages.el index 814a6ad73..975494422 100644 --- a/layers/+frameworks/react/packages.el +++ b/layers/+frameworks/react/packages.el @@ -38,6 +38,20 @@ (defun react/post-init-flycheck () (with-eval-after-load 'flycheck (flycheck-add-mode 'javascript-eslint 'react-mode)) + (defun react/use-eslint-from-node-modules () + (let* ((root (locate-dominating-file + (or (buffer-file-name) default-directory) + "node_modules")) + (global-eslint (executable-find "eslint")) + (local-eslint (expand-file-name "node_modules/.bin/eslint" + root)) + (eslint (if (file-executable-p local-eslint) + local-eslint + global-eslint))) + (setq-local flycheck-javascript-eslint-executable eslint))) + + (add-hook 'react-mode-hook #'react/use-eslint-from-node-modules) + (spacemacs/add-flycheck-hook 'react-mode)) (defun react/post-init-js-doc ()