| 
...
 | 
...
 | 
@@ -149,45 +149,47 @@ | 
| 
149
 | 
149
 | 
           showSizeChanger: true,
 | 
| 
150
 | 
150
 | 
         },
 | 
| 
151
 | 
151
 | 
         afterFetch: async (data: DeviceInfo[]) => {
 | 
| 
152
 | 
 
 | 
-          const BMap = (window as any).BMap;
 | 
| 
153
 | 
 
 | 
-          unref(BMapInstance).clearOverlays();
 | 
| 
154
 | 
 
 | 
-          const markerList: MarkerList[] = [];
 | 
| 
155
 | 
 
 | 
-          data.forEach((item) => {
 | 
| 
156
 | 
 
 | 
-            const {
 | 
| 
157
 | 
 
 | 
-              name,
 | 
| 
158
 | 
 
 | 
-              deviceState,
 | 
| 
159
 | 
 
 | 
-              deviceInfo: { longitude, latitude },
 | 
| 
160
 | 
 
 | 
-            } = item;
 | 
| 
161
 | 
 
 | 
-            const point = new BMap.Point(longitude, latitude);
 | 
| 
162
 | 
 
 | 
-            const rivet = deviceState === 'INACTIVE' ? djx : deviceState === 'ONLINE' ? zx : lx;
 | 
| 
163
 | 
 
 | 
-            const myIcon = new BMap.Icon(rivet, new BMap.Size(20, 30));
 | 
| 
164
 | 
 
 | 
-            const marker = new BMap.Marker(point, { icon: myIcon });
 | 
| 
165
 | 
 
 | 
-            const label = new BMap.Label(name, {
 | 
| 
166
 | 
 
 | 
-              position: point,
 | 
| 
167
 | 
 
 | 
-              offset: new BMap.Size(-15, -45),
 | 
| 
 
 | 
152
 | 
+          Promise.resolve().then(() => {
 | 
| 
 
 | 
153
 | 
+            const BMap = (window as any).BMap;
 | 
| 
 
 | 
154
 | 
+            unref(BMapInstance).clearOverlays();
 | 
| 
 
 | 
155
 | 
+            const markerList: MarkerList[] = [];
 | 
| 
 
 | 
156
 | 
+            data.forEach((item) => {
 | 
| 
 
 | 
157
 | 
+              const {
 | 
| 
 
 | 
158
 | 
+                name,
 | 
| 
 
 | 
159
 | 
+                deviceState,
 | 
| 
 
 | 
160
 | 
+                deviceInfo: { longitude, latitude },
 | 
| 
 
 | 
161
 | 
+              } = item;
 | 
| 
 
 | 
162
 | 
+              const point = new BMap.Point(longitude, latitude);
 | 
| 
 
 | 
163
 | 
+              const rivet = deviceState === 'INACTIVE' ? djx : deviceState === 'ONLINE' ? zx : lx;
 | 
| 
 
 | 
164
 | 
+              const myIcon = new BMap.Icon(rivet, new BMap.Size(20, 30));
 | 
| 
 
 | 
165
 | 
+              const marker = new BMap.Marker(point, { icon: myIcon });
 | 
| 
 
 | 
166
 | 
+              const label = new BMap.Label(name, {
 | 
| 
 
 | 
167
 | 
+                position: point,
 | 
| 
 
 | 
168
 | 
+                offset: new BMap.Size(-15, -45),
 | 
| 
 
 | 
169
 | 
+              });
 | 
| 
 
 | 
170
 | 
+              label.setStyle({
 | 
| 
 
 | 
171
 | 
+                color: '#000',
 | 
| 
 
 | 
172
 | 
+                borderRadius: '5px',
 | 
| 
 
 | 
173
 | 
+                borderColor: '#ccc',
 | 
| 
 
 | 
174
 | 
+                padding: '5px',
 | 
| 
 
 | 
175
 | 
+              });
 | 
| 
 
 | 
176
 | 
+              markerList.push({ ...item, marker, label });
 | 
| 
168
 | 
177
 | 
             });
 | 
| 
169
 | 
 
 | 
-            label.setStyle({
 | 
| 
170
 | 
 
 | 
-              color: '#000',
 | 
| 
171
 | 
 
 | 
-              borderRadius: '5px',
 | 
| 
172
 | 
 
 | 
-              borderColor: '#ccc',
 | 
| 
173
 | 
 
 | 
-              padding: '5px',
 | 
| 
174
 | 
 
 | 
-            });
 | 
| 
175
 | 
 
 | 
-            markerList.push({ ...item, marker, label });
 | 
| 
176
 | 
 
 | 
-          });
 | 
| 
177
 | 
 
 | 
-
 | 
| 
178
 | 
 
 | 
-          markerList.forEach((record) => {
 | 
| 
179
 | 
 
 | 
-            unref(BMapInstance).addOverlay(record.marker);
 | 
| 
180
 | 
 
 | 
-            unref(BMapInstance).addOverlay(record.label);
 | 
| 
181
 | 
 
 | 
-            const isAlarmStatus = !!record.alarmStatus;
 | 
| 
182
 | 
 
 | 
-            if (isAlarmStatus) {
 | 
| 
183
 | 
 
 | 
-              const alarmStatusClassName = 'device-status__alarm';
 | 
| 
184
 | 
 
 | 
-              const className = record.marker.Ec.getAttribute('class');
 | 
| 
185
 | 
 
 | 
-              record.marker.Ec.setAttribute('class', `${className} ${alarmStatusClassName}`);
 | 
| 
186
 | 
 
 | 
-            }
 | 
| 
187
 | 
178
 | 
 
 | 
| 
188
 | 
 
 | 
-            //标注监听事件
 | 
| 
189
 | 
 
 | 
-            record.marker.addEventListener('click', function () {
 | 
| 
190
 | 
 
 | 
-              createDeviceInfoWindow(record);
 | 
| 
 
 | 
179
 | 
+            markerList.forEach((record) => {
 | 
| 
 
 | 
180
 | 
+              unref(BMapInstance).addOverlay(record.marker);
 | 
| 
 
 | 
181
 | 
+              unref(BMapInstance).addOverlay(record.label);
 | 
| 
 
 | 
182
 | 
+              const isAlarmStatus = !!record.alarmStatus;
 | 
| 
 
 | 
183
 | 
+              if (isAlarmStatus) {
 | 
| 
 
 | 
184
 | 
+                const alarmStatusClassName = 'device-status__alarm';
 | 
| 
 
 | 
185
 | 
+                const className = record.marker.Ec.getAttribute('class');
 | 
| 
 
 | 
186
 | 
+                record.marker.Ec.setAttribute('class', `${className} ${alarmStatusClassName}`);
 | 
| 
 
 | 
187
 | 
+              }
 | 
| 
 
 | 
188
 | 
+
 | 
| 
 
 | 
189
 | 
+              //标注监听事件
 | 
| 
 
 | 
190
 | 
+              record.marker.addEventListener('click', function () {
 | 
| 
 
 | 
191
 | 
+                createDeviceInfoWindow(record);
 | 
| 
 
 | 
192
 | 
+              });
 | 
| 
191
 | 
193
 | 
             });
 | 
| 
192
 | 
194
 | 
           });
 | 
| 
193
 | 
195
 | 
 
 | 
...
 | 
...
 | 
 |