7

BundleTransformer のバージョン 1 からバージョン 2 にアップグレードすると、次のメッセージが表示される場合があります。

名前 の JavaScript エンジンのインスタンスを作成するファクトリが見つかりませんでしたMsieJsEngine

私のように、ポイント リリース以上のものをアップグレードしたことに気付いていないかもしれません。

直し方?

4

2 に答える 2

13

バージョン 2 では、構成に WEB.CONFIG を使用しなくなりました

したがって、それを削除することから始めて、このリンクの残りの部分を読んでください

https://github.com/Taritsyn/JavaScriptEngineSwitcher/wiki/How-to-upgrade-applications-to-version-2.X


基本的には、次のことを行います。

  • JavaScript エンジンの既存の web.config ノードを削除する
  • global.asax のような場所にいくつかの初期化コードを追加する
  • 使用するエンジンの Nuget パッケージをインストールします
  • 拡張メソッドを使用できるようにステートメントを追加してくださいusing(その方法を選択した場合)。

私はこのようなものになりました:

    using JavaScriptEngineSwitcher.Core;
    using JavaScriptEngineSwitcher.Msie;
    using JavaScriptEngineSwitcher.V8;

    ....

    public class JsEngineSwitcherConfig
    {
        public static void Configure(JsEngineSwitcher engineSwitcher)
        {
            engineSwitcher.EngineFactories
                .AddMsie(new MsieSettings
                {
                    UseEcmaScript5Polyfill = true,
                    UseJson2Library = true
                })
                .AddV8();

            engineSwitcher.DefaultEngineName = MsieJsEngine.EngineName;
        }
   }
于 2016-10-09T02:47:03.417 に答える
1

指示に従っていますが、コードが BundleConfig で壊れています

var cssTransformer = new StyleTransformer();

configuration 要素のname属性に/configuration/bundleTransformer/less/jsEngine、JavaScript エンジンの名前が指定されていません。

JavaScript エンジンをインストールしていない場合は、このモジュールを正しく機能させるために、次の NuGet パッケージのいずれかをインストールすることをお勧めします: * JavaScriptEngineSwitcher.Msie * JavaScriptEngineSwitcher.V8 * JavaScriptEngineSwitcher.ChakraCore

パッケージをインストールした後、構成要素の属性に JavaScript エンジンの名前 (例: MsieJsEngine) を設定する必要があります。name/configuration/bundleTransformer/less/jsEngine

于 2016-11-13T04:00:27.727 に答える