シリアルポート使用時のvue-electronの問題解決

シリアルポート使用時のvue-electronの問題解決

エラーは次のとおりです:

キャッチされない TypeError: 未定義のプロパティ 'modules' を読み取ることができません
Object.eval (webpack-internal:///./node_modules/bindings/bindings.js:29) で
eval (webpack-internal:///./node_modules/bindings/bindings.js:223) で
Object../node_modules/bindings/bindings.js (chunk-vendors.js:255) で
__webpack_require__ (app.js:849) で
fn (app.js:151) で
eval (webpack-internal:///./node_modules/@serialport/bindings/lib/linux.js:2) で
Object../node_modules/@serialport/bindings/lib/linux.js (chunk-vendors.js:65) で
__webpack_require__ (app.js:849) で
fn (app.js:151) で
Object.eval (webpack-internal:///./node_modules/@serialport/bindings/lib/index.js:14) で

まとめると、webpackはバイナリを解析できないとか…githubで議論されています

システム: win10  
「依存関係」: {
    "core-js": "^3.6.5",
    "電子プレビルド": "^1.4.13",
    "シリアルポート": "^9.2.1",
    "vue": "^2.6.11"
},
「devDependencies」: {
    "@vue/cli-plugin-babel": "~4.5.0",
    "@vue/cli-plugin-eslint": "~4.5.0",
    "@vue/cli-service": "~4.5.0",
    "babel-eslint": "^10.1.0",
    "電子": "^13.0.0",
    "electron-devtools-インストーラ": "^3.1.0",
    "電子再構築": "^3.2.3",
    "eslint": "^6.7.2",
    "eslint-プラグイン-vue": "^6.2.2",
    "vue-cli-plugin-electron-builder": "~2.1.1",
    "vue-テンプレートコンパイラ": "^2.6.11"
},

解決:

const { IgnorePlugin } = require('webpack')
 
モジュール.エクスポート = {
  プラグインオプション: {
    プラグイン: [
      新しい無視プラグイン({
        リソース正規表現: /serialport/
      })
    ]、
    電子ビルダー: {
      ノード統合: true、
      外部: [
        'シリアルポート'
      ]
    }
  }
} 

app.allowRendererProcessReuse = false 

再実行してください

これで、vue-electron が serialport を使用する際の問題の解決策に関するこの記事は終了です。vue-electron が serialport を使用する際の問題に関する関連コンテンツの詳細については、123WORDPRESS.COM で以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vue3とElectronを使ったデスクトップアプリケーションの詳しい説明
  • vue3+electron12+dll 開発のためのクライアント構成の詳細な説明
  • Electron+vueを使用してゼロからローカルプレイヤーを構築する方法の例
  • 電子の落とし穴のダイアログでのコールバックの解決
  • 電子の未定義問題の解決
  • Vue ベースの Electron プロジェクトの構築プロセスの詳細なグラフィック説明

<<:  Linux での grep コマンドの使い方の詳細な説明

>>:  MySQL はリレーショナルデータベースですか?

推薦する

CSS 位置プロパティが絶対の場合のパーセンテージ値の計算

位置が絶対の場合、関連する属性のパーセンテージは、参照先の要素 (包含ブロック) を基準として計算さ...

CentOS 6-7 PHPのyumインストール方法(推奨)

1. 現在インストールされているPHPパッケージを確認するyum list installed |...

Reactホームページの読み込みが遅い問題のパフォーマンス最適化事例の詳細な説明

しばらくReactを勉強した後、実践してみたいと思います。そこで、個人のブログのウェブサイトを再構築...

Linuxテキスト処理ツールの詳細な説明

1. /etc/passwdファイル内のデフォルトシェルが/sbin/nologinではないユーザー...

Ubuntu 18.04 に phpMyAdmin をインストールするための詳細なチュートリアル

Ubuntu 18.04 上の Apache で動作するように phpMyAdmin をインストール...

IE 8/Chrome/Firefox と互換性のあるコメント返信ポップアップマスク効果実装アイデア

平日はニュースに注目して、テンセントをよく閲覧しています。しかし、コメントへの返信はほとんど見られま...

Ubuntu Linux に Git と GitHub をインストールして使用する

Git 入門Git は、Linux(R) カーネル開発の管理を支援するために 2005 年に Lin...

M1 ProチップでVueプロジェクトを開始する方法

目次導入Homebrewをインストールするnvmをインストールするノードをインストールするインストー...

js を使用して XML オンライン エディターを作成する例

目次序文オンラインXMLエディタの必要性テクノロジー事前調査ビジュアルプログラミングVSCODEプラ...

ルート変更を監視するJavaScriptの詳細な説明

目次歴史pushState() メソッドpushState() の使用シナリオreplaceStat...

VPSサーバーでよく使われるパフォーマンステストスクリプトの概要

これは、VPS サーバー用の一般的なワンクリック パフォーマンス テスト スクリプトです。マシンの構...

Linuxでのcrontabの使い方と注意点の詳しい説明

Crontab は定期的な実行を設定するために使用されるコマンドです。そのデーモン プロセスは cr...

ウェブページの幅を携帯電話の画面(ビューポート)の幅に自動的に適応させる実装コード

一般的な書き方は次のとおりです。 XML/HTML コードコンテンツをクリップボードにコピー<...

MySQL の問題を解決する: MSVCR120.dll が見つからないため、コードの実行を続行できません

1. 問題MySQL の初期化時に発生する問題は、次のとおりです。 1. 「MSVCR120.dll...

Linux の traceroute コマンドの使用方法の詳細な説明

Traceroute を使用すると、情報がコンピュータからインターネットの反対側のホストまでたどるパ...