UNPKG

@mapgis/webclient-common

Version:

mapgis ES6 format for igserver

3,261 lines 51 kB
<header id="page-title" class="page-title">
    
        <span class="page-title-main">类名</span>
        <span class="page-title-sub">Basemap</span>
    
</header>





<section>

<article>
    <div class="container-overview">
    
        
            <div class='vertical-section'>
                <div class="members">
                    <div class="member">
                        


    
    <h4 class="name" id="Basemap">
        <a class="href-link" href="#Basemap">#</a>
        
        <span class="code-name" id="Basemap" style="font-size:30px">
            
                new Basemap<span class="signature">(options)</span>
            
        </span>
    </h4>
    

    
    <div class="description">
        <p>基础地图对象
<br>[ES5引入方式]:<br/>
zondy.Basemap() <br/>
[ES6引入方式]:<br/>
import { Map } from &quot;@mapgis/webclient-common&quot; <br/></p>
    </div>
    









    <h4>参数</h4>
    
<div class="table-container">
    <table class="params table">
        <thead>
        <tr>
            
            <th>名称</th>
            

            <th>类型</th>

            
            <th style="min-width: 100px;">默认值</th>
            

            <th class="last">描述</th>
        </tr>
        </thead>

        <tbody>
        

            
<tr class="deep-level-0">
  
      <td class="name"><code>options</code></td>
  

  <td class="type">
  
      
<span class="param-type">
    
             Object
    
</span>



  
  </td>

  
      <td class="default">
      
      </td>
  

  <td class="description last"><p>构造参数</p></td>
</tr>


  
    
<tr class="deep-level-1">
  
      <td class="name"><code>baseLayers</code></td>
  

  <td class="type">
  
      
<span class="param-type">
    
             <a link="Collection.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Collection" Collection.html>Collection</a>
    
</span>



  
  </td>

  
      <td class="default">
      
          new Collection()
      
      </td>
  

  <td class="description last"><p>图层管理器</p></td>
</tr>


  
    
<tr class="deep-level-1">
  
      <td class="name"><code>id</code></td>
  

  <td class="type">
  
      
<span class="param-type">
    
             String
    
</span>



  
  </td>

  
      <td class="default">
      
          ''
      
      </td>
  

  <td class="description last"><p>基础地图的ID</p></td>
</tr>


  
    
<tr class="deep-level-1">
  
      <td class="name"><code>title</code></td>
  

  <td class="type">
  
      
<span class="param-type">
    
             String
    
</span>



  
  </td>

  
      <td class="default">
      
          ''
      
      </td>
  

  <td class="description last"><p>基础地图的名称</p></td>
</tr>


  
    
<tr class="deep-level-1">
  
      <td class="name"><code>thumbnailUrl</code></td>
  

  <td class="type">
  
      
<span class="param-type">
    
             String
    
</span>



  
  </td>

  
      <td class="default">
      
          ''
      
      </td>
  

  <td class="description last"><p>基础地图的缩略图地址</p></td>
</tr>


  



        
        </tbody>
    </table>
</div>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>





    <div class="method-parameter columns">
        <div class="column is-2"><label>绑定事件</label></div>
        <div class="column is-10">
            <ul>
                <li><a href="#添加基础图层事件">添加基础图层事件</a></li>
            </ul>
        </div>
    </div>

















<p class="summary"><h5>支持如下方法:</h5>
<a href='#destroy'>[1、销毁Map对象]</a><br/>
<a href='#fromJSON'>[2、通过json对象构造并返回一个新的Map对象]</a><br/>
<a href='#toJSON'>[3、转换为json对象]</a><br/>
<a href='#clone'>[4、克隆并返回一个新的Map对象]</a><br/></p>



    <h5>示例</h5>
    
        <p class="code-caption"><h7 id='valueExpression'>添加底图图层</h7></p>
    
    
        <pre class="prettyprint"><code>// ES5引入方式
const { Map, Basemap, Collection } = zondy
const { IGSTileLayer } = zondy.layer
// ES6引入方式
import { Map, Basemap, Collection, IGSTileLayer } from "@mapgis/webclient-common"
//创建Map对象
const map = new Map({
  // 初始化底图图层集合
  basemap: new Basemap({
    // 可以设置多个图层到底图集合中
    baseLayers: new Collection(
      [
        // 创建一个图层
        new IGSTileLayer({
          url: '服务及地址'
        })
      ]
    )
  })
});</code></pre>
    



                    </div>
                </div>
            </div>
        
    
    </div>
    
    
        <h3 class="subsection-title">继承关系</h3>

        


    <ul>
        <li><a link="Evented.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Evented" Evented.html>Evented</a></li>
    </ul>


    

    

    

    

    

    

    
        <div class='vertical-section'>
            <h3 id='member'>成员变量</h3>
            <h4 style="margin-top: 20px;margin-bottom: 20px;">成员变量概述</h4>
            <div class="table-container">
                <table class="params table">
                    <thead>
                    <tr>
                        <th>名称</th>
                        <th>类型</th>
                        <th>描述</th>
                    </tr>
                    </thead>
                    <tbody>
                        
                            <tr class="deep-level-0">
                                <td class="name"><code><a href="#baseLayers">baseLayers</a></code></td>
                                <td class="name">
                                    <code>
                                        
<span class="param-type">
    
             <a link="Collection.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Collection" Collection.html>Collection</a>
    
</span>



                                    </code>
                                </td>
                                <td class="name"><code><p>图层管理容器中包含的子图层</p></code></td>
                            </tr>
                        
                            <tr class="deep-level-0">
                                <td class="name"><code><a href="#id">id</a></code></td>
                                <td class="name">
                                    <code>
                                        
<span class="param-type">
    
             <a link="Collection.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Collection" Collection.html>Collection</a>
    
</span>



                                    </code>
                                </td>
                                <td class="name"><code><p>基础地图的id</p></code></td>
                            </tr>
                        
                            <tr class="deep-level-0">
                                <td class="name"><code><a href="#spatialReference">spatialReference</a></code></td>
                                <td class="name">
                                    <code>
                                        
<span class="param-type">
    
             <a link="Collection.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Collection" Collection.html>Collection</a>
    
</span>



                                    </code>
                                </td>
                                <td class="name"><code><p>基础地图的坐标系</p></code></td>
                            </tr>
                        
                            <tr class="deep-level-0">
                                <td class="name"><code><a href="#thumbnailUrl">thumbnailUrl</a></code></td>
                                <td class="name">
                                    <code>
                                        
<span class="param-type">
    
             <a link="Collection.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Collection" Collection.html>Collection</a>
    
</span>



                                    </code>
                                </td>
                                <td class="name"><code><p>基础地图的缩略图地址</p></code></td>
                            </tr>
                        
                            <tr class="deep-level-0">
                                <td class="name"><code><a href="#title">title</a></code></td>
                                <td class="name">
                                    <code>
                                        
<span class="param-type">
    
             <a link="Collection.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Collection" Collection.html>Collection</a>
    
</span>



                                    </code>
                                </td>
                                <td class="name"><code><p>基础地图的名称</p></code></td>
                            </tr>
                        
                    </tbody>
                </table>
            </div>
            <h4 style="margin-top: 20px;margin-bottom: 20px;">成员变量详情</h4>
            <div class="members">
            
                <div class="member">

    <span class="method-parameter is-pulled-right">
        <label>类型:</label>
        
<span class="param-type">
    
             <a link="Collection.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Collection" Collection.html>Collection</a>
    
</span>



    </span>

<h4 class="name" id="baseLayers">
    <a class="href-link" href="#baseLayers">#</a>
    
    <span class="code-name">
        baseLayers
    </span>
    
</h4>




<div class="description">
    <p>图层管理容器中包含的子图层</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>





</div>
            
                <div class="member">

    <span class="method-parameter is-pulled-right">
        <label>类型:</label>
        
<span class="param-type">
    
             <a link="Collection.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Collection" Collection.html>Collection</a>
    
</span>



    </span>

<h4 class="name" id="id">
    <a class="href-link" href="#id">#</a>
    
    <span class="code-name">
        id
    </span>
    
</h4>




<div class="description">
    <p>基础地图的id</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>





</div>
            
                <div class="member">

    <span class="method-parameter is-pulled-right">
        <label>类型:</label>
        
<span class="param-type">
    
             <a link="Collection.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Collection" Collection.html>Collection</a>
    
</span>



    </span>

<h4 class="name" id="spatialReference">
    <a class="href-link" href="#spatialReference">#</a>
    
        
            <span class='tag'>readonly</span>
        
    
    <span class="code-name">
        spatialReference
    </span>
    
</h4>




<div class="description">
    <p>基础地图的坐标系</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>





</div>
            
                <div class="member">

    <span class="method-parameter is-pulled-right">
        <label>类型:</label>
        
<span class="param-type">
    
             <a link="Collection.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Collection" Collection.html>Collection</a>
    
</span>



    </span>

<h4 class="name" id="thumbnailUrl">
    <a class="href-link" href="#thumbnailUrl">#</a>
    
    <span class="code-name">
        thumbnailUrl
    </span>
    
</h4>




<div class="description">
    <p>基础地图的缩略图地址</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>





</div>
            
                <div class="member">

    <span class="method-parameter is-pulled-right">
        <label>类型:</label>
        
<span class="param-type">
    
             <a link="Collection.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Collection" Collection.html>Collection</a>
    
</span>



    </span>

<h4 class="name" id="title">
    <a class="href-link" href="#title">#</a>
    
    <span class="code-name">
        title
    </span>
    
</h4>




<div class="description">
    <p>基础地图的名称</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>





</div>
            
            </div>
        </div>
    

    
        <div class='vertical-section'>
            <h3 id='function'>方法</h3>
            <h4 style="margin-top: 20px;margin-bottom: 20px;">方法概述</h4>
            <div class="members">
            <div class="table-container">
                <table class="params table">
                    <thead>
                    <tr>
                        <th>名称</th>
                        <th>返回值类型</th>
                        <th>描述</th>
                    </tr>
                    </thead>
                    <tbody>
                        
                            <tr class="deep-level-0">
                                <td class="name"><code><a href="#fromJSON">fromJSON</a></code></td>
                                <td class="name">
                                    <code>
                                        
                                                
<span class="param-type">
    
             <a link="Map.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Map" Map.html>Map</a>
    
</span>



                                            
                                    </code>
                                </td>
                                <td class="name"><code><p>通过json对象构造并返回一个新的Map对象</code></td>
                            </tr>
                        
                            <tr class="deep-level-0">
                                <td class="name"><code><a href="#clone">clone</a></code></td>
                                <td class="name">
                                    <code>
                                        
                                                
<span class="param-type">
    
             <a link="Basemap.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Basemap" Basemap.html>Basemap</a>
    
</span>



                                            
                                    </code>
                                </td>
                                <td class="name"><code><p>克隆并返回一个新的Map对象</code></td>
                            </tr>
                        
                            <tr class="deep-level-0">
                                <td class="name"><code><a href="#destroy">destroy</a></code></td>
                                <td class="name">
                                    <code>
                                        
                                    </code>
                                </td>
                                <td class="name"><code><p>销毁Map对象</code></td>
                            </tr>
                        
                            <tr class="deep-level-0">
                                <td class="name"><code><a href="#off">off</a></code></td>
                                <td class="name">
                                    <code>
                                        
                                                
<span class="param-type">
    
             Object
    
</span>



                                            
                                    </code>
                                </td>
                                <td class="name"><code><p>移除事件<br/>
示例如下:<br/>
</code></td>
                            </tr>
                        
                            <tr class="deep-level-0">
                                <td class="name"><code><a href="#on">on</a></code></td>
                                <td class="name">
                                    <code>
                                        
                                                
<span class="param-type">
    
             Object
    
</span>



                                            
                                    </code>
                                </td>
                                <td class="name"><code><p>注册一个新的监听事件;<br/>
示例如下:<br/>
</code></td>
                            </tr>
                        
                            <tr class="deep-level-0">
                                <td class="name"><code><a href="#toJSON">toJSON</a></code></td>
                                <td class="name">
                                    <code>
                                        
                                                
<span class="param-type">
    
             Object
    
</span>



                                            
                                    </code>
                                </td>
                                <td class="name"><code><p>转换为json对象</code></td>
                            </tr>
                        
                    </tbody>
                </table>
            </div>
            <h4 style="margin-top: 20px;margin-bottom: 20px;">方法详情</h4>
            
                <div class="member">


    
    <h4 class="name" id=".fromJSON">
        <a class="href-link" href="#.fromJSON">#</a>
        
            
                <span class='tag'>static</span>
            
        
        <span class="code-name" id="fromJSON" style="font-size:30px">
            
                fromJSON<span class="signature">(json)</span>
            
        </span>
    </h4>
    

    
    <div class="description">
        <p>通过json对象构造并返回一个新的Map对象<a id='fromJSON'></a></p>
    </div>
    









    <h4>参数</h4>
    
<div class="table-container">
    <table class="params table">
        <thead>
        <tr>
            
            <th>名称</th>
            

            <th>类型</th>

            

            <th class="last">描述</th>
        </tr>
        </thead>

        <tbody>
        

            
<tr class="deep-level-0">
  
      <td class="name"><code>json</code></td>
  

  <td class="type">
  
      
<span class="param-type">
    
             Object
    
</span>



  
  </td>

  

  <td class="description last"><p>json数据</p></td>
</tr>



        
        </tbody>
    </table>
</div>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>


















    <div class='columns method-parameter'>
        <div class="column is-2"><label>返回值</label></div>
        <div class="column is-10">
            
                    

<div class="columns">
    
    <div class='param-desc column is-7'><p>一个新的Map对象</p></div>
    
    
    <div class='column is-5 has-text-left'>
        <label>类型: </label>
        
<span class="param-type">
    
             <a link="Map.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Map" Map.html>Map</a>
    
</span>



    </div>
    
</div>

                
        </div>
    </div>






</div>
            
                <div class="member">


    
    <h4 class="name" id="clone">
        <a class="href-link" href="#clone">#</a>
        
        <span class="code-name" id="clone" style="font-size:30px">
            
                clone<span class="signature">()</span>
            
        </span>
    </h4>
    

    
    <div class="description">
        <p>克隆并返回一个新的Map对象<a id='clone'></a></p>
    </div>
    













<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>


















    <div class='columns method-parameter'>
        <div class="column is-2"><label>返回值</label></div>
        <div class="column is-10">
            
                    

<div class="columns">
    
    <div class='param-desc column is-7'><p>新的Basemap对象</p></div>
    
    
    <div class='column is-5 has-text-left'>
        <label>类型: </label>
        
<span class="param-type">
    
             <a link="Basemap.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Basemap" Basemap.html>Basemap</a>
    
</span>



    </div>
    
</div>

                
        </div>
    </div>






</div>
            
                <div class="member">


    
    <h4 class="name" id="destroy">
        <a class="href-link" href="#destroy">#</a>
        
        <span class="code-name" id="destroy" style="font-size:30px">
            
                destroy<span class="signature">()</span>
            
        </span>
    </h4>
    

    
    <div class="description">
        <p>销毁Map对象<a id='destroy'></a></p>
    </div>
    













<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>























</div>
            
                <div class="member">


    
    <h4 class="name" id="off">
        <a class="href-link" href="#off">#</a>
        
        <span class="code-name" id="off" style="font-size:30px">
            
                off<span class="signature">(types<span class="signature-attributes">opt</span>, fn<span class="signature-attributes">opt</span>, context<span class="signature-attributes">opt</span>)</span>
            
        </span>
    </h4>
    

    
    <div class="description">
        <p>移除事件<br/>
示例如下:<br/>
<a href='#off1'>[1、移除一个事件的指定回调函数]</a><br/>
<a href='#off2'>[2、移除一个事件的所有回调函数]</a><br/>
<a href='#off3'>[3、移除多个事件的同一个指定的回调函数]</a><br/>
<a href='#off4'>[4、移除多个指定事件的回调函数]</a><br/>
<a href='#off5'>[5、删除时指定上下文 - types类型为字符串]</a><br/>
<a href='#off6'>[6、删除时指定上下文 - types类型为对象]</a><br/></p>
    </div>
    









    <h4>参数</h4>
    
<div class="table-container">
    <table class="params table">
        <thead>
        <tr>
            
            <th>名称</th>
            

            <th>类型</th>

            

            <th class="last">描述</th>
        </tr>
        </thead>

        <tbody>
        

            
<tr class="deep-level-0">
  
      <td class="name"><code>types</code></td>
  

  <td class="type">
  
      
<span class="param-type">
    
             string
    
</span>



  
  </td>

  

  <td class="description last"><p>移除指定事件类型上绑定的回调函数<br/>
当类型为字符串时,可以移除单个或多个事件类型绑定的回调函数,单个事件:&quot;click&quot;,多个事件:以空格分割:&quot;click double-click&quot;;<br/>
当types为对象时,使用如下方式移除事件:{'click': onClickFun, 'mouse-move': onMouseMoveFun}</p></td>
</tr>



        

            
<tr class="deep-level-0">
  
      <td class="name"><code>fn</code></td>
  

  <td class="type">
  
      
<span class="param-type">
    
             function
    
</span>



  
  </td>

  

  <td class="description last"><p>事件回调函数,当types为字符串,且不指定要删除的回调函数时,删除该事件上的所有回调函数</p></td>
</tr>



        

            
<tr class="deep-level-0">
  
      <td class="name"><code>context</code></td>
  

  <td class="type">
  
      
<span class="param-type">
    
             Object
    
</span>



  
  </td>

  

  <td class="description last"><p>事件回调函数的this关键字将指向的对象</p></td>
</tr>



        
        </tbody>
    </table>
</div>






<dl class="details">

    

    

    
    <dt class="inherited-from">Inherited From:</dt>
    <dd class="inherited-from"><ul class="dummy"><li>
        <a goto="off" link="Evented.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Evented#off" Evented.html#off>Evented#off</a>
    </li></ul></dd>
    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>


















    <div class='columns method-parameter'>
        <div class="column is-2"><label>返回值</label></div>
        <div class="column is-10">
            
                    

<div class="columns">
    
    <div class='param-desc column is-7'><p>当前实例</p></div>
    
    
    <div class='column is-5 has-text-left'>
        <label>类型: </label>
        
<span class="param-type">
    
             Object
    
</span>



    </div>
    
</div>

                
        </div>
    </div>






    <h5>示例</h5>
    
        <p class="code-caption"><h5 id='off1'>移除一个事件的指定回调函数</h5></p>
    
    
        <pre class="prettyprint"><code>// 一个事件的回调函数
const clickFunction = function (event) {
  console.log("点击事件:", event)
}
// 调用MapView或SceneView的off方法移除一个事件的回调函数
view.off('click', clickFunction)</code></pre>
    

        <p class="code-caption"><h5 id='off2'>移除一个事件的所有回调函数</h5></p>
    
    
        <pre class="prettyprint"><code>// 一个事件的回调函数1
const clickFunction1 = function (event) {
  console.log("点击事件1:", event)
}

// 一个事件的回调函数2
const clickFunction2 = function (event) {
  console.log("点击事件2:", event)
}

// 调用MapView或SceneView的off方法移除一个事件的所有回调函数
// 不指定回调函数,则移除该事件上的所有绑定的回调函数
view.off('click')</code></pre>
    

        <p class="code-caption"><h5 id='off3'>移除多个事件的同一个指定的回调函数</h5></p>
    
    
        <pre class="prettyprint"><code>// 多个事件的同一个回调函数
const eventFunction = function (event) {
  console.log("事件:", event)
}
// 调用MapView或SceneView的off方法移除多个事件的同一个指定的回调函数
view.off('click double-click', eventFunction)</code></pre>
    

        <p class="code-caption"><h5 id='off4'>移除多个指定事件的回调函数</h5></p>
    
    
        <pre class="prettyprint"><code>// 一个事件的回调函数
const clickFunction = function (event) {
  console.log("click事件:", event)
}
// 调用MapView或SceneView的off方法移除多个指定事件的回调函数
view.off({
   // 移除click事件上一个指定的函数
  "click": clickFunction,
  // 移除double-click上所有指定的函数
  "double-click": undefined
})</code></pre>
    

        <p class="code-caption"><h5 id='off5'>删除时指定上下文 - types类型为字符串</h5></p>
    
    
        <pre class="prettyprint"><code>// 一个事件的回调函数
const clickFunction = function (event) {
  console.log("点击事件:", event)
}
// 调用MapView或SceneView的off方法移除一个事件的回调函数
view.off('click', clickFunction, view)
// 调用MapView或SceneView的off方法移除一个事件的所有回调函数
view.off('click', undefined, view)</code></pre>
    

        <p class="code-caption"><h5 id='off6'>删除时指定上下文 - types类型为对象</h5></p>
    
    
        <pre class="prettyprint"><code>// 一个事件的回调函数
const clickFunction = function (event) {
  console.log("click事件:", event)
}
// 调用MapView或SceneView的off方法移除多个指定事件的回调函数
view.off({
   // 移除click事件上一个指定的函数
  "click": clickFunction,
  // 移除double-click上所有指定的函数
  "double-click": undefined
}, view)</code></pre>
    


</div>
            
                <div class="member">


    
    <h4 class="name" id="on">
        <a class="href-link" href="#on">#</a>
        
        <span class="code-name" id="on" style="font-size:30px">
            
                on<span class="signature">(types<span class="signature-attributes">opt</span>, fn<span class="signature-attributes">opt</span>, context<span class="signature-attributes">opt</span>)</span>
            
        </span>
    </h4>
    

    
    <div class="description">
        <p>注册一个新的监听事件;<br/>
示例如下:<br/>
<a href='#event1'>[1、注册一个事件]</a><br/>
<a href='#event2'>[2、一次注册多个事件 - 同一个回调函数]</a><br/>
<a href='#event3'>[3、一次注册多个事件 - 分别指回调应函数]</a><br/>
<a href='#event4'>[4、当types为字符串时 - 指定上下文]</a><br/>
<a href='#event5'>[5、当types为对象时 - 指定上下文]</a><br/></p>
    </div>
    









    <h4>参数</h4>
    
<div class="table-container">
    <table class="params table">
        <thead>
        <tr>
            
            <th>名称</th>
            

            <th>类型</th>

            
            <th style="min-width: 100px;">默认值</th>
            

            <th class="last">描述</th>
        </tr>
        </thead>

        <tbody>
        

            
<tr class="deep-level-0">
  
      <td class="name"><code>types</code></td>
  

  <td class="type">
  
      
<span class="param-type">
    
             String
    
</span>
|

<span class="param-type">
    
             Object
    
</span>



  
  </td>

  
      <td class="default">
      
          null
      
      </td>
  

  <td class="description last"><p>事件类型<br/>
当types为字符串时,可以定义单个或多个事件,单个事件:&quot;click&quot;,多个事件:以空格分割:&quot;click double-click&quot;;<br/>
当types为对象时,使用如下方式指定事件:{'click': onClickFun, 'mouse-move': onMouseMoveFun}</p></td>
</tr>



        

            
<tr class="deep-level-0">
  
      <td class="name"><code>fn</code></td>
  

  <td class="type">
  
      
<span class="param-type">
    
             function
    
</span>



  
  </td>

  
      <td class="default">
      
          null
      
      </td>
  

  <td class="description last"><p>事件回调函数</p></td>
</tr>



        

            
<tr class="deep-level-0">
  
      <td class="name"><code>context</code></td>
  

  <td class="type">
  
      
<span class="param-type">
    
             Object
    
</span>



  
  </td>

  
      <td class="default">
      
          null
      
      </td>
  

  <td class="description last"><p>事件回调函数的this关键字将指向的对象</p></td>
</tr>



        
        </tbody>
    </table>
</div>






<dl class="details">

    

    

    
    <dt class="inherited-from">Inherited From:</dt>
    <dd class="inherited-from"><ul class="dummy"><li>
        <a goto="on" link="Evented.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Evented#on" Evented.html#on>Evented#on</a>
    </li></ul></dd>
    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>


















    <div class='columns method-parameter'>
        <div class="column is-2"><label>返回值</label></div>
        <div class="column is-10">
            
                    

<div class="columns">
    
    <div class='param-desc column is-7'><p>当前实例</p></div>
    
    
    <div class='column is-5 has-text-left'>
        <label>类型: </label>
        
<span class="param-type">
    
             Object
    
</span>



    </div>
    
</div>

                
        </div>
    </div>






    <h5>示例</h5>
    
        <p class="code-caption"><h5 id='event1'>注册一个事件</h5></p>
    
    
        <pre class="prettyprint"><code>// 初始化一个点击事件回调函数
const clickFunction = function (event) {
  console.log("点击事件:", event)
}
// 调用MapView或SceneView的on方法注册一个点击事件
view.on('click', clickFunction)</code></pre>
    

        <p class="code-caption"><h5 id='event2'>一次注册多个事件 - 同一个回调函数</h5></p>
    
    
        <pre class="prettyprint"><code>// 初始化一个事件回调函数
const eventFunction = function (event) {
  console.log("事件:", event)
}

// 调用MapView或SceneView的on方法注册多个事件
// 多个事件类型使用同一个回调函数
view.on('click right-click-down', eventFunction)</code></pre>
    

        <p class="code-caption"><h5 id='event3'>一次注册多个事件 - 分别指回调应函数</h5></p>
    
    
        <pre class="prettyprint"><code>// 初始化一个左键点击事件回调函数
const clickFunction = function (event) {
  console.log("click事件:", event)
}

// 初始化一个右键按下事件回调函数
const rightClickFunction = function (event) {
  console.log("right-click-down事件:", event)
}

// 调用MapView或SceneView的on方法注册多个事件
// 每一个事件类型,使用单独的回调函数
// 注意使用此种方式,一种类型的事件仅能指定一个回调函数
view.on({
  "click": clickFunction,
  "right-click-down": rightClickFunction
})</code></pre>
    

        <p class="code-caption"><h5 id='event4'>指定上下文 - types类型为字符串</h5></p>
    
    
        <pre class="prettyprint"><code>// 初始化一个点击事件回调函数
const clickFunction = function (event) {
  console.log("点击事件:", event)
  console.log("上下文对象:", this)
}
// 调用MapView或SceneView的on方法注册一个点击事件
// 指定view为回调函数的上下文对象
view.on('click', clickFunction, view)</code></pre>
    

        <p class="code-caption"><h5 id='event5'>指定上下文 - types类型为对象</h5></p>
    
    
        <pre class="prettyprint"><code>// 初始化一个点击事件回调函数
const clickFunction = function (event) {
  console.log("点击事件:", event)
  console.log("上下文对象:", this)
}
// 调用MapView或SceneView的on方法注册一个点击事件
// 指定view为回调函数的上下文对象
view.on({
  "click": clickFunction,
  "right-click-down": clickFunction
}, view)</code></pre>
    


</div>
            
                <div class="member">


    
    <h4 class="name" id="toJSON">
        <a class="href-link" href="#toJSON">#</a>
        
        <span class="code-name" id="toJSON" style="font-size:30px">
            
                toJSON<span class="signature">()</span>
            
        </span>
    </h4>
    

    
    <div class="description">
        <p>转换为json对象<a id='toJSON'></a></p>
    </div>
    













<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>


















    <div class='columns method-parameter'>
        <div class="column is-2"><label>返回值</label></div>
        <div class="column is-10">
            
                    

<div class="columns">
    
    <div class='param-desc column is-7'><p>导出的json对象</p></div>
    
    
    <div class='column is-5 has-text-left'>
        <label>类型: </label>
        
<span class="param-type">
    
             Object
    
</span>



    </div>
    
</div>

                
        </div>
    </div>






</div>
            
            </div>
        </div>
    

    

    
        <div class='vertical-section' style='margin-top: 10px'>
            <h3 id='event'>事件</h3>
            <h4 style="margin-top: 20px;margin-bottom: 20px;">事件概述</h4>
            <div class="table-container">
                <table class="params table">
                    <thead>
                    <tr>
                        <th>名称</th>
                        <th>描述</th>
                    </tr>
                    </thead>
                    <tbody>
                        
                            <tr class="deep-level-0">
                                <td class="name"><code><a  href="#底图图层创建事件(已废弃)">底图图层创建事件(已废弃)</a></code></td>
                                <td class="name"><code>底图图层创建事件(已废弃)</code></td>
                            </tr>
                        
                            <tr class="deep-level-0">
                                <td class="name"><code><a  href="#底图图层更新事件(已废弃)">底图图层更新事件(已废弃)</a></code></td>
                                <td class="name"><code>底图图层更新事件(已废弃)</code></td>
                            </tr>
                        
                            <tr class="deep-level-0">
                                <td class="name"><code><a  href="#底图图层移除事件(已废弃)">底图图层移除事件(已废弃)</a></code></td>
                                <td class="name"><code>底图图层移除事件(已废弃)</code></td>
                            </tr>
                        
                    </tbody>
                </table>
            </div>
            <h4 style="margin-top: 20px;margin-bottom: 20px;">事件详情</h4>
            <div class="members">
            
                <div class="member">
                    


    
    <h4 class="name" id="event:%E5%BA%95%E5%9B%BE%E5%9B%BE%E5%B1%82%E5%88%9B%E5%BB%BA%E4%BA%8B%E4%BB%B6%EF%BC%88%E5%B7%B2%E5%BA%9F%E5%BC%83%EF%BC%89">
        <a class="href-link" href="#event:%E5%BA%95%E5%9B%BE%E5%9B%BE%E5%B1%82%E5%88%9B%E5%BB%BA%E4%BA%8B%E4%BB%B6%EF%BC%88%E5%B7%B2%E5%BA%9F%E5%BC%83%EF%BC%89">#</a>
        
        <span class="code-name" id="底图图层创建事件(已废弃)" style="font-size:30px">
            
                底图图层创建事件(已废弃)
            
        </span>
    </h4>
    

    













    <h5 class="subsection-title">属性:</h5>

    
<div class="table-container">
    <table class="props table">
        <thead>
        <tr>
            
            <th>Name</th>
            

            <th>Type</th>

            
            <th>Attributes</th>
            

            
            <th>Default</th>
            

            <th class="last">Description</th>
        </tr>
        </thead>

        <tbody>
        
            
<tr class="deep-level-0">
    
        <td class="name"><code>event</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             Object
    
</span>



    
    </td>

    
        <td class="attributes">
        

        
        </td>
    

    
        <td class="default">
        
        </td>
    

    <td class="description last"><p>事件对象</p></td>
</tr>

  
      
<tr class="deep-level-1">
    
        <td class="name"><code>type</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             <a link="LayerEventType.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="LayerEventType" global.html#LayerEventType>LayerEventType</a>
    
</span>



    
    </td>

    
        <td class="attributes">
        
            &lt;optional><br>
        

        
        </td>
    

    
        <td class="default">
        
            'layerview-created'
        
        </td>
    

    <td class="description last"><p>事件类型</p></td>
</tr>

  
      
<tr class="deep-level-1">
    
        <td class="name"><code>layer</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             <a link="Layer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Layer" Layer.html>Layer</a>
    
</span>



    
    </td>

    
        <td class="attributes">
        
            &lt;optional><br>
        

        
        </td>
    

    
        <td class="default">
        
        </td>
    

    <td class="description last"><p>事件接收对象</p></td>
</tr>

  
      
<tr class="deep-level-1">
    
        <td class="name"><code>layerView</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             <a link="LayerView.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="LayerView" LayerView.html>LayerView</a>
    
</span>



    
    </td>

    
        <td class="attributes">
        
            &lt;optional><br>
        

        
        </td>
    

    
        <td class="default">
        
        </td>
    

    <td class="description last"><p>事件地图视图中心</p></td>
</tr>

  
      
<tr class="deep-level-1">
    
        <td class="name"><code>view</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             <a link="BaseView.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="BaseView" BaseView.html>BaseView</a>
    
</span>



    
    </td>

    
        <td class="attributes">
        
            &lt;optional><br>
        

        
        </td>
    

    
        <td class="default">
        
        </td>
    

    <td class="description last"><p>事件地图视图对象</p></td>
</tr>

  

        
        </tbody>
    </table>
</div>



<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>























    <h5>示例</h5>
    
        <p class="code-caption"><h7>视图图层创建事件</h7></p>
    
    
        <pre class="prettyprint"><code>basemap.on('layerview-created', (event) => {
  console.log("添加地图图层事件:", event)
})</code></pre>
    



                </div>
            
                <div class="member">
                    


    
    <h4 class="name" id="event:%E5%BA%95%E5%9B%BE%E5%9B%BE%E5%B1%82%E6%9B%B4%E6%96%B0%E4%BA%8B%E4%BB%B6%EF%BC%88%E5%B7%B2%E5%BA%9F%E5%BC%83%EF%BC%89">
        <a class="href-link" href="#event:%E5%BA%95%E5%9B%BE%E5%9B%BE%E5%B1%82%E6%9B%B4%E6%96%B0%E4%BA%8B%E4%BB%B6%EF%BC%88%E5%B7%B2%E5%BA%9F%E5%BC%83%EF%BC%89">#</a>
        
        <span class="code-name" id="底图图层更新事件(已废弃)" style="font-size:30px">
            
                底图图层更新事件(已废弃)
            
        </span>
    </h4>
    

    













    <h5 class="subsection-title">属性:</h5>

    
<div class="table-container">
    <table class="props table">
        <thead>
        <tr>
            
            <th>Name</th>
            

            <th>Type</th>

            
            <th>Attributes</th>
            

            
            <th>Default</th>
            

            <th class="last">Description</th>
        </tr>
        </thead>

        <tbody>
        
            
<tr class="deep-level-0">
    
        <td class="name"><code>event</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             Object
    
</span>



    
    </td>

    
        <td class="attributes">
        

        
        </td>
    

    
        <td class="default">
        
        </td>
    

    <td class="description last"><p>事件对象</p></td>
</tr>

  
      
<tr class="deep-level-1">
    
        <td class="name"><code>type</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             <a link="LayerEventType.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="LayerEventType" global.html#LayerEventType>LayerEventType</a>
    
</span>



    
    </td>

    
        <td class="attributes">
        
            &lt;optional><br>
        

        
        </td>
    

    
        <td class="default">
        
            'layerview-update'
        
        </td>
    

    <td class="description last"><p>事件类型</p></td>
</tr>

  
      
<tr class="deep-level-1">
    
        <td class="name"><code>layer</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             <a link="Layer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Layer" Layer.html>Layer</a>
    
</span>



    
    </td>

    
        <td class="attributes">
        
            &lt;optional><br>
        

        
        </td>
    

    
        <td class="default">
        
        </td>
    

    <td class="description last"><p>事件接收对象</p></td>
</tr>

  
      
<tr class="deep-level-1">
    
        <td class="name"><code>layerView</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             <a link="LayerView.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="LayerView" LayerView.html>LayerView</a>
    
</span>



    
    </td>

    
        <td class="attributes">
        
            &lt;optional><br>
        

        
        </td>
    

    
        <td class="default">
        
        </td>
    

    <td class="description last"><p>事件地图视图中心</p></td>
</tr>

  
      
<tr class="deep-level-1">
    
        <td class="name"><code>view</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             <a link="BaseView.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="BaseView" BaseView.html>BaseView</a>
    
</span>



    
    </td>

    
        <td class="attributes">
        
            &lt;optional><br>
        

        
        </td>
    

    
        <td class="default">
        
        </td>
    

    <td class="description last"><p>事件地图视图对象</p></td>
</tr>

  

        
        </tbody>
    </table>
</div>



<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>























    <h5>示例</h5>
    
        <p class="code-caption"><h7>视图图层创建事件</h7></p>
    
    
        <pre class="prettyprint"><code>basemap.on('layerview-update', (event) => {
  console.log("添加地图图层事件:", event)
})</code></pre>
    



                </div>
            
                <div class="member">
                    


    
    <h4 class="name" id="event:%E5%BA%95%E5%9B%BE%E5%9B%BE%E5%B1%82%E7%A7%BB%E9%99%A4%E4%BA%8B%E4%BB%B6%EF%BC%88%E5%B7%B2%E5%BA%9F%E5%BC%83%EF%BC%89">
        <a class="href-link" href="#event:%E5%BA%95%E5%9B%BE%E5%9B%BE%E5%B1%82%E7%A7%BB%E9%99%A4%E4%BA%8B%E4%BB%B6%EF%BC%88%E5%B7%B2%E5%BA%9F%E5%BC%83%EF%BC%89">#</a>
        
        <span class="code-name" id="底图图层移除事件(已废弃)" style="font-size:30px">
            
                底图图层移除事件(已废弃)
            
        </span>
    </h4>
    

    













    <h5 class="subsection-title">属性:</h5>

    
<div class="table-container">
    <table class="props table">
        <thead>
        <tr>
            
            <th>Name</th>
            

            <th>Type</th>

            
            <th>Attributes</th>
            

            
            <th>Default</th>
            

            <th class="last">Description</th>
        </tr>
        </thead>

        <tbody>
        
            
<tr class="deep-level-0">
    
        <td class="name"><code>event</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             Object
    
</span>



    
    </td>

    
        <td class="attributes">
        

        
        </td>
    

    
        <td class="default">
        
        </td>
    

    <td class="description last"><p>事件对象</p></td>
</tr>

  
      
<tr class="deep-level-1">
    
        <td class="name"><code>type</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             <a link="LayerEventType.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="LayerEventType" global.html#LayerEventType>LayerEventType</a>
    
</span>



    
    </td>

    
        <td class="attributes">
        
            &lt;optional><br>
        

        
        </td>
    

    
        <td class="default">
        
            'layerview-remove'
        
        </td>
    

    <td class="description last"><p>事件类型</p></td>
</tr>

  
      
<tr class="deep-level-1">
    
        <td class="name"><code>layer</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             <a link="Layer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="Layer" Layer.html>Layer</a>
    
</span>



    
    </td>

    
        <td class="attributes">
        
            &lt;optional><br>
        

        
        </td>
    

    
        <td class="default">
        
        </td>
    

    <td class="description last"><p>事件接收对象</p></td>
</tr>

  
      
<tr class="deep-level-1">
    
        <td class="name"><code>layerView</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             <a link="LayerView.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="LayerView" LayerView.html>LayerView</a>
    
</span>



    
    </td>

    
        <td class="attributes">
        
            &lt;optional><br>
        

        
        </td>
    

    
        <td class="default">
        
        </td>
    

    <td class="description last"><p>事件地图视图中心</p></td>
</tr>

  
      
<tr class="deep-level-1">
    
        <td class="name"><code>view</code></td>
    

    <td class="type">
    
        
<span class="param-type">
    
             <a link="BaseView.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="BaseView" BaseView.html>BaseView</a>
    
</span>



    
    </td>

    
        <td class="attributes">
        
            &lt;optional><br>
        

        
        </td>
    

    
        <td class="default">
        
        </td>
    

    <td class="description last"><p>事件地图视图对象</p></td>
</tr>

  

        
        </tbody>
    </table>
</div>



<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    
    

    

    

    
</dl>























    <h5>示例</h5>
    
        <p class="code-caption"><h7>视图图层创建事件</h7></p>
    
    
        <pre class="prettyprint"><code>basemap.on('layerview-remove', (event) => {
  console.log("添加地图图层事件:", event)
})</code></pre>
    



                </div>
            
            </div>
        </div>
    
</article>

</section>