2016-01-29 56 views
1

我通過索引頁上的腳本標記包含來自google cdn的角度js。browserify + browserify-shim angular global

我在我的package.json如下:我也是用咕嚕-browserify與多輸出束

"browserify": { 
    "transform": [ 
     "browserify-shim" 
    ] 
    }, 
    "browserify-shim": { 
     "angular": "global:angular", 
     "systemjs": "global:System", 
     "jquery": "global:$" 
    }, 

app: { 
    src: "./src/main.js", 
    dest: "./src/bundles/app.bundle.js" 
}, 
login: { 
    src: "./src/login/login.module.js", 
    dest: "./src/bundles/login.bundle.js" 
}, 
signup: { 
    src: "./src/signup/signup.module.js", 
    dest: "./src/bundles/signup.bundle.js" 
}, 
main: { 
    src: "./src/main/main.module.js", 
    dest: "./src/bundles/main.bundle.js" 
}, 

我遇到的問題是,角儘管browserify-shim被配置爲使用global:angular,但源文件仍然包含在我的輸出文件之一中。

我現在用的是以下幾個模塊:

"browserify": "^13.0.0", 
"browserify-shim": "^3.8.12", 
"grunt-browserify": "^4.0.1", 
+0

問題不在於你的'browserify'或'browserify-shim'配置至少如上所示 - 應該可以正常工作。可能是您的grunt-browserify設置的問題。解決這些問題的最佳方法是將一個回購(比如[this one])(https://github.com/YPCrumble/browserify-shim-grunt-browserify)並添加到一個非常簡單的grunt版本中只包含必要的組件。那麼這個bug應該很容易找到。 – YPCrumble

回答

0

您需要配置外部選項

app: { 
    options: { 
    external: [ 
     './src/login/login.module.js', 
     './src/signup/signup.module.js', 
     './src/main/main.module.js' 
    ] 
    } 
}