liyongli 3 lat temu
rodzic
commit
4486eb6512

+ 3 - 20
miniprogram/app.json

@@ -5,7 +5,8 @@
     "pages/interList/interList",
     "pages/detail/detail",
     "pages/ruins/index",
-    "pages/marvellous/index"
+    "pages/marvellous/index",
+    "pages/provincialArea/index"
   ],
   "window": {
     "backgroundColor": "#F6F6F6",
@@ -14,25 +15,7 @@
     "navigationBarTitleText": "寻找红色的记忆",
     "navigationBarTextStyle": "black"
   },
-  "tabBar": {
-    "color": "#333",
-    "selectedColor": "#07C160",
-    "backgroundColor": "#fff",
-    "list": [
-      {
-        "pagePath": "pages/home/index",
-        "text": "首页",
-        "iconPath": "/images/tabbar_icon_home_default.png",
-        "selectedIconPath": "/images/tabbar_icon_home_active.png"
-      },
-      {
-        "pagePath": "pages/index/index",
-        "text": "我的",
-        "iconPath": "/images/tabbar_icon_setting_default.png",
-        "selectedIconPath": "/images/tabbar_icon_setting_active.png"
-      }
-    ]
-  },
+  "requiredBackgroundModes":["audio"],
   "sitemapLocation": "sitemap.json",
   "style": "v2",
   "useExtendedLib": {

+ 254 - 0
miniprogram/ec-canvas/ec-canvas.js

@@ -0,0 +1,254 @@
+import WxCanvas from './wx-canvas';
+import * as echarts from './echarts';
+
+let ctx;
+
+function compareVersion(v1, v2) {
+  v1 = v1.split('.')
+  v2 = v2.split('.')
+  const len = Math.max(v1.length, v2.length)
+
+  while (v1.length < len) {
+    v1.push('0')
+  }
+  while (v2.length < len) {
+    v2.push('0')
+  }
+
+  for (let i = 0; i < len; i++) {
+    const num1 = parseInt(v1[i])
+    const num2 = parseInt(v2[i])
+
+    if (num1 > num2) {
+      return 1
+    } else if (num1 < num2) {
+      return -1
+    }
+  }
+  return 0
+}
+
+Component({
+  properties: {
+    canvasId: {
+      type: String,
+      value: 'ec-canvas'
+    },
+
+    ec: {
+      type: Object
+    },
+
+    forceUseOldCanvas: {
+      type: Boolean,
+      value: false
+    }
+  },
+
+  data: {
+    isUseNewCanvas: false
+  },
+
+  ready: function () {
+    // Disable prograssive because drawImage doesn't support DOM as parameter
+    // See https://developers.weixin.qq.com/miniprogram/dev/api/canvas/CanvasContext.drawImage.html
+    echarts.registerPreprocessor(option => {
+      if (option && option.series) {
+        if (option.series.length > 0) {
+          option.series.forEach(series => {
+            series.progressive = 0;
+          });
+        }
+        else if (typeof option.series === 'object') {
+          option.series.progressive = 0;
+        }
+      }
+    });
+
+    if (!this.data.ec) {
+      console.warn('组件需绑定 ec 变量,例:<ec-canvas id="mychart-dom-bar" '
+        + 'canvas-id="mychart-bar" ec="{{ ec }}"></ec-canvas>');
+      return;
+    }
+
+    if (!this.data.ec.lazyLoad) {
+      this.init();
+    }
+  },
+
+  methods: {
+    init: function (callback) {
+      const version = wx.getSystemInfoSync().SDKVersion
+
+      const canUseNewCanvas = compareVersion(version, '2.9.0') >= 0;
+      const forceUseOldCanvas = this.data.forceUseOldCanvas;
+      const isUseNewCanvas = canUseNewCanvas && !forceUseOldCanvas;
+      this.setData({ isUseNewCanvas });
+
+      if (forceUseOldCanvas && canUseNewCanvas) {
+        console.warn('开发者强制使用旧canvas,建议关闭');
+      }
+
+      if (isUseNewCanvas) {
+        // console.log('微信基础库版本大于2.9.0,开始使用<canvas type="2d"/>');
+        // 2.9.0 可以使用 <canvas type="2d"></canvas>
+        this.initByNewWay(callback);
+      } else {
+        const isValid = compareVersion(version, '1.9.91') >= 0
+        if (!isValid) {
+          console.error('微信基础库版本过低,需大于等于 1.9.91。'
+            + '参见:https://github.com/ecomfe/echarts-for-weixin'
+            + '#%E5%BE%AE%E4%BF%A1%E7%89%88%E6%9C%AC%E8%A6%81%E6%B1%82');
+          return;
+        } else {
+          console.warn('建议将微信基础库调整大于等于2.9.0版本。升级后绘图将有更好性能');
+          this.initByOldWay(callback);
+        }
+      }
+    },
+
+    initByOldWay(callback) {
+      // 1.9.91 <= version < 2.9.0:原来的方式初始化
+      ctx = wx.createCanvasContext(this.data.canvasId, this);
+      const canvas = new WxCanvas(ctx, this.data.canvasId, false);
+
+      echarts.setCanvasCreator(() => {
+        return canvas;
+      });
+      // const canvasDpr = wx.getSystemInfoSync().pixelRatio // 微信旧的canvas不能传入dpr
+      const canvasDpr = 1
+      var query = wx.createSelectorQuery().in(this);
+      query.select('.ec-canvas').boundingClientRect(res => {
+        if (typeof callback === 'function') {
+          this.chart = callback(canvas, res.width, res.height, canvasDpr);
+        }
+        else if (this.data.ec && typeof this.data.ec.onInit === 'function') {
+          this.data.ec.onInit(canvas, res.width, res.height, canvasDpr).then(res=>{
+            this.chart = res
+          })
+        }
+        else {
+          this.triggerEvent('init', {
+            canvas: canvas,
+            width: res.width,
+            height: res.height,
+            canvasDpr: canvasDpr // 增加了dpr,可方便外面echarts.init
+          });
+        }
+      }).exec();
+    },
+
+    initByNewWay(callback) {
+      // version >= 2.9.0:使用新的方式初始化
+      const query = wx.createSelectorQuery().in(this)
+      query
+        .select('.ec-canvas')
+        .fields({ node: true, size: true })
+        .exec(res => {
+          const canvasNode = res[0].node
+          this.canvasNode = canvasNode
+
+          const canvasDpr = wx.getSystemInfoSync().pixelRatio
+          const canvasWidth = res[0].width
+          const canvasHeight = res[0].height
+
+          const ctx = canvasNode.getContext('2d')
+
+          const canvas = new WxCanvas(ctx, this.data.canvasId, true, canvasNode)
+          echarts.setCanvasCreator(() => {
+            return canvas
+          })
+
+          if (typeof callback === 'function') {
+            this.chart = callback(canvas, canvasWidth, canvasHeight, canvasDpr)
+          } else if (this.data.ec && typeof this.data.ec.onInit === 'function') {
+            this.data.ec.onInit(canvas, canvasWidth, canvasHeight, canvasDpr).then(res=>{
+              this.chart = res
+            })
+          } else {
+            this.triggerEvent('init', {
+              canvas: canvas,
+              width: canvasWidth,
+              height: canvasHeight,
+              dpr: canvasDpr
+            })
+          }
+        })
+    },
+    canvasToTempFilePath(opt) {
+      if (this.data.isUseNewCanvas) {
+        // 新版
+        const query = wx.createSelectorQuery().in(this)
+        query
+          .select('.ec-canvas')
+          .fields({ node: true, size: true })
+          .exec(res => {
+            const canvasNode = res[0].node
+            opt.canvas = canvasNode
+            wx.canvasToTempFilePath(opt)
+          })
+      } else {
+        // 旧的
+        if (!opt.canvasId) {
+          opt.canvasId = this.data.canvasId;
+        }
+        ctx.draw(true, () => {
+          wx.canvasToTempFilePath(opt, this);
+        });
+      }
+    },
+
+    touchStart(e) {
+      if (this.chart && e.touches.length > 0) {
+        var touch = e.touches[0];
+        var handler = this.chart.getZr().handler;
+        handler.dispatch('mousedown', {
+          zrX: touch.x,
+          zrY: touch.y
+        });
+        handler.dispatch('mousemove', {
+          zrX: touch.x,
+          zrY: touch.y
+        });
+        handler.processGesture(wrapTouch(e), 'start');
+      }
+    },
+
+    touchMove(e) {
+      if (this.chart && e.touches.length > 0) {
+        var touch = e.touches[0];
+        var handler = this.chart.getZr().handler;
+        handler.dispatch('mousemove', {
+          zrX: touch.x,
+          zrY: touch.y
+        });
+        handler.processGesture(wrapTouch(e), 'change');
+      }
+    },
+
+    touchEnd(e) {
+      if (this.chart) {
+        const touch = e.changedTouches ? e.changedTouches[0] : {};
+        var handler = this.chart.getZr().handler;
+        handler.dispatch('mouseup', {
+          zrX: touch.x,
+          zrY: touch.y
+        });
+        handler.dispatch('click', {
+          zrX: touch.x,
+          zrY: touch.y
+        });
+        handler.processGesture(wrapTouch(e), 'end');
+      }
+    }
+  }
+});
+
+function wrapTouch(event) {
+  for (let i = 0; i < event.touches.length; ++i) {
+    const touch = event.touches[i];
+    touch.offsetX = touch.x;
+    touch.offsetY = touch.y;
+  }
+  return event;
+}

+ 4 - 0
miniprogram/ec-canvas/ec-canvas.json

@@ -0,0 +1,4 @@
+{
+  "component": true,
+  "usingComponents": {}
+}

+ 4 - 0
miniprogram/ec-canvas/ec-canvas.wxml

@@ -0,0 +1,4 @@
+<!-- 新的:接口对其了H5 -->
+<canvas wx:if="{{isUseNewCanvas}}" type="2d" class="ec-canvas" canvas-id="{{ canvasId }}" bindinit="init" bindtouchstart="{{ ec.disableTouch ? '' : 'touchStart' }}" bindtouchmove="{{ ec.disableTouch ? '' : 'touchMove' }}" bindtouchend="{{ ec.disableTouch ? '' : 'touchEnd' }}"></canvas>
+<!-- 旧的 -->
+<canvas wx:else class="ec-canvas" canvas-id="{{ canvasId }}" bindinit="init" bindtouchstart="{{ ec.disableTouch ? '' : 'touchStart' }}" bindtouchmove="{{ ec.disableTouch ? '' : 'touchMove' }}" bindtouchend="{{ ec.disableTouch ? '' : 'touchEnd' }}"></canvas>

+ 4 - 0
miniprogram/ec-canvas/ec-canvas.wxss

@@ -0,0 +1,4 @@
+.ec-canvas {
+  width: 100%;
+  height: 100%;
+}

Plik diff jest za duży
+ 33 - 0
miniprogram/ec-canvas/echarts.js


+ 121 - 0
miniprogram/ec-canvas/wx-canvas.js

@@ -0,0 +1,121 @@
+export default class WxCanvas {
+  constructor(ctx, canvasId, isNew, canvasNode) {
+    this.ctx = ctx;
+    this.canvasId = canvasId;
+    this.chart = null;
+    this.isNew = isNew
+    if (isNew) {
+      this.canvasNode = canvasNode;
+    }
+    else {
+      this._initStyle(ctx);
+    }
+
+    // this._initCanvas(zrender, ctx);
+
+    this._initEvent();
+  }
+
+  getContext(contextType) {
+    if (contextType === '2d') {
+      return this.ctx;
+    }
+  }
+
+  // canvasToTempFilePath(opt) {
+  //   if (!opt.canvasId) {
+  //     opt.canvasId = this.canvasId;
+  //   }
+  //   return wx.canvasToTempFilePath(opt, this);
+  // }
+
+  setChart(chart) {
+    this.chart = chart;
+  }
+
+  attachEvent() {
+    // noop
+  }
+
+  detachEvent() {
+    // noop
+  }
+
+  _initCanvas(zrender, ctx) {
+    zrender.util.getContext = function () {
+      return ctx;
+    };
+
+    zrender.util.$override('measureText', function (text, font) {
+      ctx.font = font || '12px sans-serif';
+      return ctx.measureText(text);
+    });
+  }
+
+  _initStyle(ctx) {
+    var styles = ['fillStyle', 'strokeStyle', 'globalAlpha',
+      'textAlign', 'textBaseAlign', 'shadow', 'lineWidth',
+      'lineCap', 'lineJoin', 'lineDash', 'miterLimit', 'fontSize'];
+
+    styles.forEach(style => {
+      Object.defineProperty(ctx, style, {
+        set: value => {
+          if (style !== 'fillStyle' && style !== 'strokeStyle'
+            || value !== 'none' && value !== null
+          ) {
+            ctx['set' + style.charAt(0).toUpperCase() + style.slice(1)](value);
+          }
+        }
+      });
+    });
+
+    ctx.createRadialGradient = () => {
+      return ctx.createCircularGradient(arguments);
+    };
+  }
+
+  _initEvent() {
+    this.event = {};
+    const eventNames = [{
+      wxName: 'touchStart',
+      ecName: 'mousedown'
+    }, {
+      wxName: 'touchMove',
+      ecName: 'mousemove'
+    }, {
+      wxName: 'touchEnd',
+      ecName: 'mouseup'
+    }, {
+      wxName: 'touchEnd',
+      ecName: 'click'
+    }];
+
+    eventNames.forEach(name => {
+      this.event[name.wxName] = e => {
+        const touch = e.touches[0];
+        this.chart.getZr().handler.dispatch(name.ecName, {
+          zrX: name.wxName === 'tap' ? touch.clientX : touch.x,
+          zrY: name.wxName === 'tap' ? touch.clientY : touch.y
+        });
+      };
+    });
+  }
+
+  set width(w) {
+    if (this.canvasNode) this.canvasNode.width = w
+  }
+  set height(h) {
+    if (this.canvasNode) this.canvasNode.height = h
+  }
+
+  get width() {
+    if (this.canvasNode)
+      return this.canvasNode.width
+    return 0
+  }
+  get height() {
+    if (this.canvasNode)
+      return this.canvasNode.height
+    return 0
+  }
+}

+ 105 - 0
miniprogram/pages/provincialArea/index.js

@@ -0,0 +1,105 @@
+// miniprogram/pages/provincialArea/index.js
+Page({
+
+  /**
+   * 页面的初始数据
+   */
+  playIndex: 0,
+  data: {
+    tabs: [],
+    playStatus: true,
+    activeTab: 0,
+  },
+
+  /**
+   * 生命周期函数--监听页面加载
+   */
+  onLoad: async function (options) {
+
+    wx.setNavigationBarTitle({
+      title: "红色文物会发声-" + options.title
+    })
+    const db = wx.cloud.database();
+    const _ = db.command;
+    let list = await db.collection('data_news').where({
+      type: _.eq(3),
+      provincial: _.eq(options.title)
+    }).get();
+    wx.playBackgroundAudio({
+      dataUrl: list.data[this.playIndex].music
+    })
+    this.setData({
+      playStatus: true,
+      tabs: list.data || []
+    })
+  },
+  isPlay(){
+    let playStatus = !this.data.playStatus;
+    console.log(playStatus)
+    if(playStatus){
+      wx.playBackgroundAudio({
+        dataUrl: this.data.tabs[this.playIndex].music
+      })
+    }else{
+      wx.pauseBackgroundAudio()
+    }
+    this.setData({
+      playStatus
+    })
+  },
+  pageChange(e){
+    this.playIndex = e.detail.current || 0;
+    wx.playBackgroundAudio({
+      dataUrl: this.data.tabs[this.playIndex].music
+    })
+  },
+
+  /**
+   * 生命周期函数--监听页面初次渲染完成
+   */
+  onReady: function () {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面显示
+   */
+  onShow: function () {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面隐藏
+   */
+  onHide: function () {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面卸载
+   */
+  onUnload: function () {
+    wx.stopBackgroundAudio()
+  },
+
+  /**
+   * 页面相关事件处理函数--监听用户下拉动作
+   */
+  onPullDownRefresh: function () {
+
+  },
+
+  /**
+   * 页面上拉触底事件的处理函数
+   */
+  onReachBottom: function () {
+
+  },
+
+  /**
+   * 用户点击右上角分享
+   */
+  onShareAppMessage: function () {
+
+  }
+})

+ 5 - 0
miniprogram/pages/provincialArea/index.json

@@ -0,0 +1,5 @@
+{
+  "usingComponents": {
+    "mp-icon": "weui-miniprogram/icon/icon"
+  }
+}

+ 22 - 0
miniprogram/pages/provincialArea/index.wxml

@@ -0,0 +1,22 @@
+<!--miniprogram/pages/provincialArea/index.wxml-->
+<view style="playbtn">
+  <view class="playAudio {{playStatus ? 'playAudioAnimation' : ''}}" bindtap="isPlay">
+    <mp-icon wx:if="{{playStatus}}" icon="music" color="#000" size="{{15}}"></mp-icon>
+    <mp-icon wx:if="{{!playStatus}}" icon="music-off" color="#000" size="{{15}}"></mp-icon>
+  </view>
+</view>
+<swiper class="areaPage" vertical="{{true}}" bindchange="pageChange">
+  <swiper-item wx:for="{{tabs}}" wx:key="_id">
+    <scroll-view class="areaItem" scroll-y="{{true}}">
+      <swiper wx:if="{{item.images.length}}">
+        <swiper-item wx:for="{{item.images}}" wx:key="_id">
+          <image style="width: 730rpx;height: 100%" src="../../images/5.png"></image>
+        </swiper-item>
+      </swiper>
+      <view class="title">{{item.title}}</view>
+      <view class="content">
+        <rich-text nodes="{{item.content}}"></rich-text>
+      </view>
+    </scroll-view>
+  </swiper-item>
+</swiper>

+ 55 - 0
miniprogram/pages/provincialArea/index.wxss

@@ -0,0 +1,55 @@
+/* miniprogram/pages/provincialArea/index.wxss */
+.areaPage {
+  width: 100%;
+  height: 100%;
+  box-sizing: border-box;
+}
+
+.areaItem {
+  height: 100vh;
+  padding: 10rpx;
+  box-sizing: border-box;
+}
+
+.content {
+  padding: 20rpx 20rpx 60rpx 20rpx;
+}
+
+.title {
+  text-align: center;
+  margin: 20rpx 0;
+}
+
+.palybtn {
+  position: relative;
+  height: 30px;
+}
+
+.playAudio {
+  z-index: 1;
+  right: 20rpx;
+  width: 30px;
+  height: 30px;
+  border-radius: 50%;
+  text-align: center;
+  position: absolute;
+  box-sizing: border-box;
+  border: 1rpx solid #000;
+}
+
+.playAudioAnimation {
+  animation-name: playAudio;
+  animation-duration: 2s;
+  animation-timing-function: linear;
+  animation-iteration-count: infinite;
+}
+
+@keyframes playAudio {
+  0% {
+    transform: rotate(0deg);
+  }
+
+  100% {
+    transform: rotate(360deg);
+  }
+}

+ 81 - 3
miniprogram/pages/ruins/index.js

@@ -1,24 +1,35 @@
 // miniprogram/pages/ruins/index.js
+import * as echarts from '../../ec-canvas/echarts';
 Page({
 
   /**
    * 页面的初始数据
    */
+  chart: undefined,
   data: {
-
+    show: false,
+    ec: {
+      onInit: undefined,
+      lazyload: true
+    },
   },
 
   /**
    * 生命周期函数--监听页面加载
    */
   onLoad: function (options) {
+
   },
 
   /**
    * 生命周期函数--监听页面初次渲染完成
    */
   onReady: function () {
-
+    this.setData({
+      ec: {
+        onInit: this.initChart.bind(this)
+      }
+    })
   },
 
   /**
@@ -39,7 +50,7 @@ Page({
    * 生命周期函数--监听页面卸载
    */
   onUnload: function () {
-
+    this.chart && this.chart.dispose && this.chart.dispose();
   },
 
   /**
@@ -61,5 +72,72 @@ Page({
    */
   onShareAppMessage: function () {
 
+  },
+
+  initChart: async function (canvas, width, height, dpr) {
+    this.chart && this.chart.dispose && this.chart.dispose();
+    this.chart = echarts.init(canvas, null, {
+      width: width,
+      height: height,
+      devicePixelRatio: dpr // 像素
+    });
+
+    const db = wx.cloud.database();
+    const _ = db.command;
+    let list = await db.collection('map_json').where({
+      region: _.eq("china")
+    }).get();
+    echarts.registerMap('CN', list.data[0].geoJson);
+    var option = {
+      tooltip: {
+        show: false
+      },
+      "dataZoom-inside": {
+        type: "inside"
+      },
+      scaleLimit: {
+        min: 1.25  //缩放最小大小
+      },
+      geo: {
+        map: "CN",
+        roam: true,//改成true也完全没效果
+        zoom: 1.25,
+        scaleLimit: {
+          //滚轮缩放的极限控制
+          min: 1.25,
+          max: 6,
+        },
+        top: "middle",
+        label: {
+          normal: {
+            show: true,
+            fontSize: "10",
+            color: "rgb(249,80,77)",
+          },
+        },
+        itemStyle: {
+          normal: {
+            areaColor: "rgba(0,0,0,0)",
+            borderColor: "rgb(249,80,77)",
+          },
+          emphasis: {
+            areaColor: "rgba(249,80,77,.3)",
+            shadowOffsetX: 0,
+            shadowOffsetY: 0,
+            borderWidth: 0,
+          },
+        },
+      },
+      series: [
+
+      ]
+    };
+    this.chart.setOption(option);
+    this.chart.on("click", (params) => {
+      wx.navigateTo({
+        url: '/pages/provincialArea/index?title=' + params.region.name,
+      })
+    })
+    return this.chart;
   }
 })

+ 3 - 1
miniprogram/pages/ruins/index.json

@@ -1,4 +1,6 @@
 {
-  "usingComponents": {},
+  "usingComponents": {
+    "ec-canvas": "../../ec-canvas/ec-canvas"
+  },
   "navigationBarTitleText": "红色遗址会发声"
 }

+ 1 - 1
miniprogram/pages/ruins/index.wxml

@@ -1,4 +1,4 @@
 <!--miniprogram/pages/ruins/index.wxml-->
 <view class="ruins">
-
+  <ec-canvas canvasId="test" ec="{{ ec }}" ></ec-canvas>
 </view>

+ 1 - 1
miniprogram/pages/ruins/index.wxss

@@ -1,5 +1,5 @@
 /* miniprogram/pages/ruins/index.wxss */
-.ruins{
+.ruins,.ec-canvas{
   width: 750rpx;
   height: 100vh;
 }

+ 27 - 0
package-lock.json

@@ -0,0 +1,27 @@
+{
+  "name": "trafficBroadcast",
+  "version": "1.0.0",
+  "lockfileVersion": 2,
+  "requires": true,
+  "packages": {
+    "": {
+      "version": "1.0.0",
+      "license": "ISC",
+      "dependencies": {
+        "@miniprogram-component-plus/tabs": "^1.0.0"
+      }
+    },
+    "node_modules/@miniprogram-component-plus/tabs": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npm.taobao.org/@miniprogram-component-plus/tabs/download/@miniprogram-component-plus/tabs-1.0.0.tgz",
+      "integrity": "sha1-y/a04858SsiteQqES0BxVfB9ntc="
+    }
+  },
+  "dependencies": {
+    "@miniprogram-component-plus/tabs": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npm.taobao.org/@miniprogram-component-plus/tabs/download/@miniprogram-component-plus/tabs-1.0.0.tgz",
+      "integrity": "sha1-y/a04858SsiteQqES0BxVfB9ntc="
+    }
+  }
+}

+ 19 - 0
package.json

@@ -0,0 +1,19 @@
+{
+  "name": "trafficBroadcast",
+  "version": "1.0.0",
+  "description": "这是云开发的快速启动指引,其中演示了如何上手使用云开发的三大基础能力:",
+  "main": "index.js",
+  "scripts": {
+    "test": "echo \"Error: no test specified\" && exit 1"
+  },
+  "repository": {
+    "type": "git",
+    "url": "http://113.142.79.114:10080/liyongli/trafficBroadcast.git"
+  },
+  "keywords": [],
+  "author": "",
+  "license": "ISC",
+  "dependencies": {
+    "@miniprogram-component-plus/tabs": "^1.0.0"
+  }
+}

+ 1 - 2
project.config.json

@@ -10,7 +10,7 @@
     "minified": true,
     "newFeature": true,
     "coverView": true,
-    "nodeModules": false,
+    "nodeModules": true,
     "autoAudits": false,
     "showShadowRootInWxmlPanel": true,
     "scopeDataCheck": false,
@@ -28,7 +28,6 @@
       "outputPath": ""
     },
     "enableEngineNative": false,
-    "bundle": false,
     "useIsolateContext": true,
     "useCompilerModule": true,
     "userConfirmedUseCompilerModuleSwitch": false,

+ 12 - 0
project.private.config.json

@@ -17,6 +17,18 @@
           "pathName": "pages/marvellous/index",
           "query": "title=%E7%B2%BE%E5%BD%A9%E7%9E%AC%E9%97%B4",
           "scene": null
+        },
+        {
+          "name": "pages/ruins/index",
+          "pathName": "pages/ruins/index",
+          "query": "",
+          "scene": null
+        },
+        {
+          "name": "pages/provincialArea/index",
+          "pathName": "pages/provincialArea/index",
+          "query": "title=%E4%B8%8A%E6%B5%B7",
+          "scene": null
         }
       ]
     }

Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików