2017-04-07 105 views
0

我得到以下錯誤消息rollup.config.js文件「warning.indexOf是不是一個函數」 rollup.js

warning.indexOf不是一個函數

彙總。 config.js

import nodeResolve from 'rollup-plugin-node-resolve' 
import commonjs from 'rollup-plugin-commonjs'; 
import uglify from 'rollup-plugin-uglify' 

    //paths are relative to the execution path 
export default { 
    entry: 'src/main-aot.js', 
    dest: 'aot/dist/build.js', // output a single application bundle 
    sourceMap: true, 
    sourceMapFile: 'aot/dist/build.js.map', 
format: 'iife', 
onwarn: function (warning) { 
// Skip certain warnings 

// should intercept ... but doesn't in some rollup versions 
if (warning.code === 'THIS_IS_UNDEFINED') { return; } 
// intercepts in some rollup versions 
if (warning.indexOf("The 'this' keyword is equivalent to 'undefined'") > -1) { return; } 
if (warning.indexOf("Use of `eval` ") > -1) { 
    return; 
} 
// console.warn everything else 
console.warn(warning.message); 
}, 
plugins: [ 
    nodeResolve({ jsnext: true, module: true }), 
    commonjs({ 
    include: 'node_modules/rxjs/**', 
}), 
uglify() 
] 
} 

pacakge.json

「彙總」: 「^ 0.41.6」, 「彙總 - 插件 - CommonJS的」: 「^ 8.0.2」, 「彙總 - 插件節點,決心」: 「^ 3.0.0」 「彙總 - 插件,醜化」:「^ 1.0.1」,

回答

0

它似乎警告本身,而不是字符串的對象。 因此,我改變與.indexOf語句來folling行:

if (warning.message.indexOf("The 'this' keyword is equivalent to 'undefined'") > -1) { return; } 

因此避免了錯誤,但我不知道這是否是正確的解決方案。因爲當我然後嘗試彙總我的angular2應用程序時,我收到了幾個「未導出」的錯誤。 但你可以試一試,也許它可以幫助你。