tradingview的图表方法setLanguage(locale) 被删除了,如何通过点击语言切换按钮来自定义设置语言?
参考chatGPT的回答内容,如果TradingView的 setLanguage(locale) 方法已经被删除,您可以尝试以下步骤来通过点击语言切换按钮来自定义设置语言:
找到TradingView的语言切换按钮。通常它位于图表左下角,标有一个地球仪图标。
单击该按钮,然后选择您想要使用的语言。
如果您想要自定义设置语言,您可以尝试在浏览器的开发者控制台中使用 localStorage 对象。
在控制台中输入以下代码,将您想要的语言代码替换“xx”:
localStorage.setItem('tv_i18n', '{"locale":"xx"}')
然后重新加载TradingView页面,您应该能够看到您自定义的语言已经应用。
请注意,使用 localStorage 对象来自定义设置语言可能不是TradingView官方支持的方法,因此可能会出现意外的问题。如果您遇到任何问题,建议您与TradingView支持团队联系。
参考GPT和自己的思路,如果 setLanguage(locale) 方法被删除了,那么您可以通过以下步骤在TradingView中自定义设置语言:
1 在TradingView中打开您的图表。
2 点击页面右下方的语言切换按钮,该按钮通常显示为两个字母的国家/地区代码。
3 选择您想要设置的语言。TradingView支持多种语言,包括英语、中文、日语、德语、法语、西班牙语等等。
4 确认您选择的语言。TradingView将使用您选择的语言来显示所有文本和标签。
如果您的TradingView页面上没有语言切换按钮,那么您可以在页面左下方的“设置”菜单中找到“语言”选项。在该选项中,您可以选择您想要设置的语言并保存更改。
您可以在TradingView的设置中找到语言选项来自定义设置语言。要访问设置,请点击页面右上角的齿轮图标,然后选择“语言”选项。从那里,您可以选择所需的语言。如果您想经常更改语言,您可以将不同的语言添加到您的语言列表中,这样您就可以通过单击屏幕底部的语言切换按钮轻松切换语言。
以下答案由GPT-3.5大模型与博主波罗歌共同编写:
在TradingView中,语言切换按钮会自动根据用户浏览器的语言设置来显示。但如果你需要手动设置语言,可以使用以下方法:
HTML代码:
<select id="language">
<option value="en">English</option>
<option value="zh">中文</option>
<option value="ja">日本語</option>
</select>
<button onclick="setLanguage()">设置语言</button>
JavaScript代码:
function setLanguage() {
var lang = document.getElementById('language').value;
TradingView.setLanguage(lang);
}
JavaScript代码:
TradingView.setLanguage = function(locale) {
var dictionary = TradingView.i18n[locale];
if (!dictionary) {
// 使用默认语言
locale = 'en';
dictionary = TradingView.i18n[locale];
}
TradingView.$create('i18n').value = dictionary;
TradingView.$emit('i18n', dictionary);
}
function setLanguage() {
var lang = document.getElementById('language').value;
TradingView.setLanguage(lang);
}
以上代码中,我们自定义了setLanguage方法,实现了自定义设置语言的功能。具体实现过程是,首先获取对应语言的词典,然后将词典的值设置到TradingView的i18n模块中,最后触发TradingView的i18n事件,让TradingView更新语言设置。
需要注意的是,以上hack方法并非官方推荐使用,可能存在不稳定性。如果TradingView官方在将来提供了新的方法,建议使用官方方法来实现语言设置。
希望以上回答能给你带来帮助。
如果我的回答解决了您的问题,请采纳!
该回答引用ChatGPT
根据TradingView文档,setLanguage(locale)方法已被删除。现在,您需要使用applyOverrides()方法来自定义设置语言。
以下是使用applyOverrides()方法设置语言的步骤:
1、在页面中加载TradingView库
<script type="text/javascript" src="https://s3.tradingview.com/tv.js"></script>
在页面中加载TradingView语言文件
<script type="text/javascript" src="https://s3.tradingview.com/lang/[LANGUAGE_CODE].js"></script>
其中,[LANGUAGE_CODE]是您想要加载的语言代码,如英语为en,中文为zh等。
2、添加一个语言切换按钮,并为其添加一个click事件处理程序
<button id="lang-btn">切换语言</button>
<script type="text/javascript">
var langBtn = document.getElementById("lang-btn");
langBtn.addEventListener("click", function() {
setLanguage("en");
});
</script>
在这里,当用户点击语言切换按钮时,我们调用setLanguage()方法并将语言代码作为参数传递给它。但是,由于该方法已被删除,我们需要替换为applyOverrides()方法。
4、在click事件处理程序中使用applyOverrides()方法
<button id="lang-btn">切换语言</button>
<script type="text/javascript">
var langBtn = document.getElementById("lang-btn");
langBtn.addEventListener("click", function() {
TradingView.override('language', 'en');
});
</script>
在这里,我们使用TradingView.override()方法将language键的值设置为英语。
您可以按照类似的方式为其他键设置值。例如,要更改“Buy”按钮的文本,您可以使用以下代码:
TradingView.override('widget.buyButton', '购买');
在这里,我们将widget.buyButton键的值设置为“购买”。