Electron でレンダリング スレッドを記述するために Anguar を使用する際の問題
某草草
某草草 2017-06-14 10:53:29
0
2
819
###こんにちは、みんな:###

electron のレンダリング スレッドで angular フレームワークを使用したいのですが、webpack でコードをパッケージ化したくないのです。electron のレンダリング スレッドは commonJS 構文もサポートしているため、Typescript を commonJS に変換するだけで済みます。パッケージ化せずに、index.html 内の対応するファイルを直接要求します。以下は私の実装プロセスです

最初に 3 つの ts ファイルを作成しました

    app.component.ts
  1. リーリー

  2. app.module.ts
  3. リーリー

  4. main.ts
  5. リーリー

  6. 次に、
tsc

を使用してこれら 3 つのファイルをコンパイルします リーリー 対応する

js

ファイルが生成され、ディレクトリ構造は次のとおりです:
次に、

index.html

require('./main') リーリー 電子プログラムを開始

これまでのところ、プログラムは正常に見え、目的を満たしていますが、入力ボックスの内容を変更すると問題が発生します。{{name}}# の下の

h1

タグの ##式は入力ボックスの値によって変化しません。つまり、データ バインディングは効果がありません。 ###次...### 次に、問題の原因を調査するために、webpack

を使用する前に、

tsc

によって生成された 3 つの js ファイルをパッケージ化しました。 リーリー index.htmlrequire

ステートメントを

require('./main.out') に置き換えて、プログラムを再度実行します

ここで入力の内容を変更すると、データ バインディングが有効になります。 ! ! 理由を知っている人はいますか?ご存知でしたら教えてください、よろしくお願いします! ! !

某草草
某草草

全員に返信(2)
学霸

main.tsのimport 'zone.js'改成import 'zone.js/dist/zone.js'
を変更したい場合は、zone.jsのpackage.jsonを見れば理由が分かるはずです

いいねを押す +0
阿神

私は電子についてはあまり詳しくありませんが、あなたの問題はインポートに関するものだと思います。

まず、webpack の動作原理は、すべての js をパッケージ化することです。たとえば、node_modules里面的@angular/core, 那webpack知道会去node_modules里面去找到他并打包到指定的文件夹里面去(比如你的app文件夹里面),所以使用webpack后引用是正常的。 那问题就在这里了, electron对于非./开头的路径会去node_modules を引用すると見つかりますか?

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート