**前言: 本文使用的是1.10版本 , 可經過TradingView.version()查看當前版本.
附上開發文檔地址:https://zlq4863947.gitbooks.i...**javascript
1、修改datafeed.js爲export導出,並在vue文件引入TradingView內部代碼charting_library.min.js和datafeed.js. html
datafeed.jsvue
// 導出核心函數,提供vue組件調用初始化k線圖 export default { UDFCompatibleDatafeed: Datafeeds.UDFCompatibleDatafeed, }
vue 組件java
// 這是個人路徑,請根據本身的路徑去配置 import "../../../static/charting_library/charting_library.min.js"; import Datafeeds from "../../../static/charting_library/datafeed/udf/datafeed.js";
2、初始化k線圖函數git
data(){ return{ widget: null, } } , methods:{ createWidget() { var _this = this; this.$nextTick(function() { let widget = new TradingView.widget({ symbol: 'BTC-USDT',//商品名稱 interval: "15",//默認顯示時間分辨率15分鐘 container_id: "tv_chart_container",//k線div容器id //調用datafeed初始化函數 datafeed: new Datafeeds.UDFCompatibleDatafeed( 'https://demo_feed.tradingview.com',//後臺地址 10000, //輪詢時間(毫秒) ), library_path: "/static/charting_library/", //static文件夾的路徑 locale: 'zh', //語言 fullscreen: true, //顯示圖表是否佔用窗口中全部可用的空間 //禁用圖表某個功能,參考:https://tradingview.gitee.io/featuresets/ disabled_features: [ "use_localstorage_for_settings", "left_toolbar", //隱藏左邊工具欄 "header_saveload", "header_symbol_search", //隱藏搜索框 "header_interval_dialog_button", //隱藏設置週期按鈕 "timeframes_toolbar", //隱藏底部刻度欄 "header_chart_type", //隱藏k線樣式選擇 // "header_indicators", //隱藏指標按鈕 "header_fullscreen_button", "header_undo_redo", //隱藏撤銷重作按鈕 "header_compare", //隱藏比較/增長商品按鈕 "header_screenshot", //隱藏截屏按鈕 "header_resolutions", "edit_buttons_in_legend", "pane_context_menu", "legend_context_menu", "adaptive_logo", "display_market_status", "volume_force_overlay" ], //啓用圖表某個功能 enabled_features: ["study_templates", "move_logo_to_main_pane"], charts_storage_url: "https://saveload.tradingview.com", charts_storage_api_version: "1.1",//版本 timezone: "Asia/Shanghai",//時區 user_id: "public_user_id", }); _this.widget = widget; //保存圖表對象 }); }, // 更新圖表 updateWidget(item) { this.removeWidget(); this.createWidget(); }, //銷燬圖表 removeWidget() { if (this.widget) { this.widget = null; } }, destroyed() { this.removeWidget(); } }, mounted(){ this.$nextTick(()=>{ this.updateWidget(); }) }
3、Datafeed.js簡單介紹 api
廣泛主要經過修改這幾個函數實現預期效果
emmm: 網上比較少關於TradingView引入Vue的文章,小弟不才,粗略的分享一下個人實現方法.函數