2017-01-25 104 views
4

webpack編譯後無法訪問變量。 我需要它,因爲我使用這個變量在onclick中調用函數。webpack編譯後無法訪問變量

代碼是這樣

function DetailClass() { 
 
    this.add = function() { 
 
    console.log(1); 
 
    } 
 
} 
 

 
var Detail = new DetailClass();

的WebPack包括這個碼成的eval()

而在HTML我這樣稱呼它

<div onclick="Detail.add();">Add</div>

回答

2

你不應該結合這樣的事件!

您是否在使用一些框架,如React甚至是jQuery?如果您使用的是最新的,例如,綁定像這樣(在JS,不是HTML):

$('#your-id').on('click',() => Detail.add()); 

如果你不是,結合這樣的:

document.getElementById('your-id').onclick =() => Detail.add(); 

但是,如果這是一個例外,你真的想要導出的東西,你可以將它設置爲窗口對象:

window.Detail = Detail;