2015-06-30 77 views
1

我使用browserify和babel作爲轉換。一個特殊字符(Â)被添加到我自己的腳本中,以及其他各個地方的模塊中。該構建/編譯位於Windows機器上。Browserify或Babel插入特殊字符

NPM構建腳本

browserify -s appClient source/app-client.js -t babelify > build/app-client.js 

輸入段:

return (
    <p>Hello,&nbsp;<span 
     onClick = {() => setMode('edit') } 
     style = { styles.displayMode } 
     >{ word }! 
     </span> 
     <input 
     onKeyUp = { onKeyUp} 
     placeholder = { word } 
     ref = 'wordInput' 
     style = { styles.editMode } 
     /> 
    </p>) 

}

輸出:

Hello, world! 

有什麼奇怪的是,Â得到&nbsp;,而不是&nbsp。所以也許我沒有看着構建過程。

我可以手動編輯JavaScript文件來刪除特殊字符。

+0

在IDE中設置受影響文件的編碼類型爲utf-8。然後在您的html頁面中添加'。這應該解決所有問題與錯誤的人物 – marcel

+0

這沒有竅門。我不認爲JS文件也受到meta標籤的影響,顯然是這樣!你可以將你的評論轉換成答案嗎? – Shroder

回答

3

在您的IDE中設置受影響文件的編碼類型爲utf-8

然後加...

<meta charset="UTF-8"> 

...到你的HTML頁面。這應該解決所有錯誤字符的問題。

注意:單靠meta標籤時,內容沒有保存爲unicode是不必要的。它只會導致頁面將所有內容解釋爲utf-8unicode)。