- Mastering OpenLayers 3
- Gábor Farkas
- 302字
- 2021-07-16 09:33:49
Debugging the code
As you will have noticed, there was a third file in the OpenLayers 3 folder discussed at the beginning of the chapter (js/ol3-3.11.0
). This file, named ol-debug.js
, is the uncompressed source file, in which the library is concatenated with all of its dependencies. We will use this file for two purpose in this book. Now, we will use it for debugging. First, open up ch01_simple_map.js
. Next, extend the init
function with an obvious mistake:
var geometry = new ol.geom.Point([0, 0]); vectorLayer.getSource().addFeature(geometry);
Don't worry if you can't spot the error immediately. That's what is debugging for. Save this extended JavaScript file with the name ch01_error.js
. Next, replace the old script with the new one in the HTML file, like this:
<script type="text/javascript" src="ch01_error.js"></script>
If you open the updated HTML, and open your browser's developer console, you will see the following error message:

Now that we have an error, let's check it in the source file by clicking on the error link on the right side of the error message:

Quite meaningless, isn't it? The compiled library is created with Google's Closure Library, which obfuscates everything by default in order to compress the code. We have to tell it which precise part of the code should be exported. We will learn how to do that in the last chapter. For now, let's use the debug file. Change the ol.js
in the HTML to ol-debug.js
, load up the map, and check for the error again:

Finally, we can see, in a well-documented form, the part that caused the error. This is a validating method, which makes sure the added feature is compatible with the library. It requires an ol.Feature
as an input, which is how we caught our error. We passed a simple geometry to the function, instead of wrapping it in an ol.Feature
first.
- Learning Cython Programming(Second Edition)
- C++面向?qū)ο蟪绦蛟O(shè)計(jì)(微課版)
- PostgreSQL技術(shù)內(nèi)幕:事務(wù)處理深度探索
- 基于Java技術(shù)的Web應(yīng)用開發(fā)
- Learning Linux Binary Analysis
- The React Workshop
- Mastering Swift 2
- 焊接機(jī)器人系統(tǒng)操作、編程與維護(hù)
- Express Web Application Development
- Access 2010中文版項(xiàng)目教程
- 邊玩邊學(xué)Scratch3.0少兒趣味編程
- Drupal 8 Development Cookbook(Second Edition)
- 安卓工程師教你玩轉(zhuǎn)Android
- 金融商業(yè)數(shù)據(jù)分析:基于Python和SAS
- 美麗洞察力:從化妝品行業(yè)看顧客需求洞察