Giter Site home page Giter Site logo

issues's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

mqleaf ptkgem

issues's Issues

App Framework ### 容器已销毁,接口调用(system.fetch.fetch())无效

Issue Type: Bug

跳转的时候报这个警告
App Framework ### 容器已销毁,接口调用(system.fetch.fetch())无效

quickapp IDE version: 快应用开发工具 1.4.0 (31949c870eaf2bd41b4eb0fed14083b6ccab58fd, 2019-05-07T07:16:04.121Z)
OS version: Darwin x64 18.2.0

System Info
Item Value
CPUs Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz (4 x 2300)
GPU Status 2d_canvas: enabled
checker_imaging: disabled_off
flash_3d: enabled
flash_stage3d: enabled
flash_stage3d_baseline: enabled
gpu_compositing: enabled
multiple_raster_threads: enabled_on
native_gpu_memory_buffers: enabled
rasterization: enabled
video_decode: enabled
video_encode: enabled
webgl: enabled
webgl2: enabled
Load (avg) 3, 2, 2
Memory (System) 16.00GB (7.06GB free)
Process Argv
Screen Reader no
VM 0%
Extensions: none

swiper组件item动态改变时,会暂停当前播放的视频

相关信息

  • 问题类型

引擎

  • 引擎版本

预览版 1050

  • 手机型号
  • 操作系统
  • IDE版本
  • toolkit版本

问题描述

swiper组件在动态添加item时,会暂停正在播放的视频

复现步骤

代码如下

<template>
  <div class="mini-video">
    <swiper class="swiper" vertical="true" indicator="false" loop="false">
      <block for="{{(index, item) in videos}}">
        <video id="video{{index}}" class="item" src="{{item}}" controls="false" onappear="play(index)" ondisappear="pause(index)"></video>
      </block>
    </swiper>
  </div>
</template>

<script>
export default {
  data: {
    videos: ['https://static.2ktq.com/fw/mini-video/1.mp4', 'https://static.2ktq.com/fw/mini-video/2.mp4', 'https://static.2ktq.com/fw/mini-video/3.mp4', 'https://static.2ktq.com/fw/mini-video/4.mp4']
  },
  onInit() {
    
  },
  play(index){
    if(index === this.videos.length - 1){
      this.videos = this.videos.concat(['https://static.2ktq.com/fw/mini-video/1.mp4', 'https://static.2ktq.com/fw/mini-video/2.mp4', 'https://static.2ktq.com/fw/mini-video/3.mp4', 'https://static.2ktq.com/fw/mini-video/4.mp4']);
    }
   this.$element(`video${index}`).start();
  },
  pause(index){
    this.$element(`video${index}`).pause();
  }
}
</script>

<style lang="less">

</style>

#45 ## 联系方式

微信:Grey-18-28

VIDEO标签增加获取视屏的信息函数

需求场景

1.不同宽高比的手机需要做一些裁剪,达到全面覆盖屏幕,就像image标签的resize-mode: contain那样
2.有些视屏流是需要横屏播放的,所以需要拿到宽高等信息

样式

需求类型

需求描述

需求场景

参考

联系方式和应用名

input修改光标颜色

input光标是白色,不支持caret-color, text-shadow, ...请问怎么修改光标颜色,color只改变了文本的颜色。

安全需求

文档关于:

  • 缺失
  • 错误
  • 不确定?

详细描述

快应用读取androidsocket开放端口,接收或发送数据时会遭到远程攻击

你的提议和看法

1、数据读取添加与android端直接传递的方法
2、在快应用中添加验证方法来进行过滤(类似于socket开放端口接收的数据的过滤)

css/less全局引入

需求场景

项目会存在一些全局样式,但不能直接在app.ux中引入,需要在各页面引入。不方便,望改善。

例如,在app.ux中引入全局less
<style lang="less"> @import './assets/styles/style.less'; </style>
在页面中使用less变量,会报错:
Variable @text-black is undefined

使用快应用预览版启动页面,不同机型首页加载时间相差较大

相关信息

  • 问题类型
    引擎

  • 引擎版本
    预览版1040

  • 手机型号
    华为mate9
    OPPO R9s

  • 操作系统

  • IDE版本

  • toolkit版本

问题描述

前提:使用web组件加载页面,在快应用预览版1040上打开
1.预期效果:不同手机机型加载首页的时间相差不多
2.实际结果:机型不同首页加载的时间相差较大,中高端机型首页加载时间1.5秒左右,华为mate9加载时间为2.123s; OPPO R9s首页加载时间为3.681s

复现步骤

代码结构:
image
使用web组件加载外部页面,在快应用预览版1040上打开,不同机型首页加载时间相差较大。
中高端机型首页加载时间1.5秒左右,华为mate9加载时间为2.123s; OPPO R9s首页加载时间为3.681s

联系方式

微信: z956174725

background-color、background-image能否共同支持一个div容器?

需求类型 toolkit

需求描述 background-color、background-image能共同支持一个div容器

需求场景 整个背景需要背景图的时候如果背景图片尺寸不够长,超出的部分使用background-color进行添加颜色

参考

联系方式和应用名

微信:UT77243

@keyframes动画失效

相关信息

  • 问题类型 不清楚
  • 引擎版本 预览版 vivo 1030
  • 手机型号
  • 操作系统
  • IDE版本
  • toolkit版本

问题描述

@Keyframes动画失效

动画定义在tabs组件A页面 滑动到tabs组件的C、D页面再滑动返回A页面动画失效
tabs组件A页面使用router.push打开新的页面 然后返回A页面动画失效

动画是A页面中的一个子组件

复现步骤

联系方式

wx: UT77243

【优化无效】手册上的「结构优化」策略无效

相关信息

  • 问题类型
    引擎

  • 引擎版本
    1040

  • 操作系统
    Mac OS 10.14

  • IDE版本
    Webstorm 2018

  • toolkit版本
    toolkit 0.4.7

问题描述

复现步骤

两个自定义库函数对象,合计约 6 KB:
image

一开始各个 ux 文件以 import 方式引入,为了减少 rpk 体积,改为使用 this.$app.$def 方式引入:
image

使用方式如:
this.$app.$def.storage.set(this.deviceId, "status", this.status)

所有代码运行都是是没有问题的。只是编译出来的 rpk,从 823KB,缩减到 822KB,感觉优化是无效的。
image

build 文件夹下的代码,这两个对象的内容依然到处都是,如何清晰地知道优化策略起效?
image

联系方式

wx:158758158758z

失去焦点blur事件无效

需求类型

不清楚

需求描述

失去焦点blur无效

需求场景

input输入框失去焦点时,需要光标消失并且收起键盘

参考

联系方式和应用名

微信号:duanjiamei002

1050多层级退回 会有渲染样式错乱问题

相关信息

  • 问题类型
  • 引擎版本

平台:快应用预览版 1050

  • 手机型号

测试机型: vivo X20A

  • 操作系统
  • IDE版本
  • toolkit版本

问题描述

问题描述:快应用程序进入多层级页面,逐层返回 操作过快的话就会有样式错乱问题(连续点击5~6次回退就会有样式渲染问题)

复现步骤

我们的需求是:详情页面有推荐板块,推荐板块进入的还是详情页,所以会有重复把页面加入页面栈的情况,然后连续点击5~6次返回,页面就会样式错误

联系方式

微信号:15210202794

tabs无法嵌套使用

需求场景

tabs下面需要嵌套tabs,目前虽然可以展示。但二级tab,第一个tab切换到第二个tab,再切换回第一个tab时。发生崩溃问题。希望能解决。

如下:热榜和推荐切换时崩溃。
tab

可复现demo:
index.txt

在APP中判断快应用是否加桌

需求类型

不清楚

需求描述

希望提供在APP或者H5中判断快应用是否加桌的方法

需求场景

在APP中进行快应用广告的投放时,无法判断快应用是否已加桌,导致很多投放资源的浪费

参考

投放app广告可以先判断app是否安装一样

联系方式和应用名

微信:Grey-18-28
应用:实况天气预报

能增加一个类似list组件的区域滚动的组件或者修改一下list组件

需求类型

需求描述

list组件的局限性 内部必须使用list-item list-item内部又不能是用if 其实我用shwo也导致出现页面数据错乱的bug 内部实现使用if or show其实可以解决很多问题

需求场景

不如聊天界面布局 上部分是聊天纪录区域 使用一个list 底部是输入框 list-item是每一条聊天纪录 在快应用中的text组件又无法识别/n这种换行符号 所以只能吧文字截取成数组for出来实现文字换行 不一样的时候难免结构不一致导致bug

参考

参考better-scroll组件库 https://github.com/ustbhuangyi/better-scroll

联系方式和应用名

微信:ut77243 快应用:周公AI解梦

tab-content是否可以设置取消预加载?

需求类型 引擎

需求描述 tab>tab-content组件用户未看到的页面可以设置 “取消预加载”

需求场景 tab-content中的A页面为默认页面时,如果B页面 OR C页面网络请求错误被捕获后调用了一个showToast OR showDialog弹窗,此时在弹窗会在A页面出现。

参考 微信小程序Tabber中的页面都是独立开的,建议快应用也添加一个这样的功能!

联系方式和应用名

微信:UT77243 快应用:算命占卜

页面 onHide 中发送 get 请求。在应用启动进入口页面,点击返回按钮退出应用时,请求正常发送,但是控制台会有报错

相关信息

  • 问题类型: 不清楚
  • 引擎版本 : 1040
  • 手机型号: vivo X21UD A
  • 操作系统 : windows8 & Mac OS 10.14
  • IDE版本 : 1.3.1
  • toolkit版本 : 0.4.3

问题描述

1. 预期效果:页面onHide中发送get请求。在应用启动进入口页面,点击返回按钮退出应用时,请求正常发送,无报错。
2. 实际效果:页面onHide中发送get请求。在应用启动进入口页面,点击返回按钮退出应用时,请求正常发送,控制台会有报错。
3. 错误栈:
    (unknown) Error: execInvokeCallback: 无效invoke回调Id "3"
    c.error.e @ VM9:1
    global.(anonymous function).n @ VM9:1

复现步骤

复现步骤:

1. 入口页面 onHide 周期中发送 get 请求;
2. 点击启动调试,调起 chrome 调试器;
3. 点击返回按钮退出应用时,控制台会有报错。

联系方式

wx: 328762691

template里使用ES6的字符串拼接出现this.字符的bug

  • 问题类型
    不清楚

  • 引擎版本
    预览版 1040

  • 手机型号
    华为 荣耀 Honor Magic(应该不分手机型号都有)

  • 操作系统
    Mac OS

  • toolkit版本
    toolkit 0.2.1

问题描述

1.预期效果:
{{ true ? 满${couponData.discount_amount}可使用 : '下单立减'}}
能够正常解析
2.实际效果:填写中文或者英文出现this.字符,填写数字则正常

复现步骤

  <text>{{ true ? `满${couponData.discount_amount}`: '下单立减'}}</text>

联系方式

a283650221

div默认宽度100%

需求场景

H5中div的宽度默认都是100%,但快应用还需要另外设置,与正常习惯不一样。

希望增加视频压缩功能

需求类型

不清楚

需求描述

能够对拍摄的视频进行压缩需求

需求场景

目前手机拍摄视频大小比较大,如果直接使用文件上传接口上传视频耗时非常久,用户体验差(有些场景不一定需要视频非常清晰)

web组件中trustedurl使用正则后,页面不能与快应用通信

相关信息

  • 问题类型
    引擎

  • 引擎版本
    预览版1040

  • 手机型号
    Redmi note 3

  • 操作系统

  • IDE版本

  • toolkit版本

问题描述

1.预期效果:web组件中的trustedurl写入匹配的正则后,加载的页面可与快应用通信
2.实际效果:使用正则后,加载的页面仍无法与快应用通信

复现步骤

react写的单页面应用中,使用web组件加载单页面应用

image

src中eduWebSrc代表应用首页地址 https://devh5-study.hismarttv.com/mobile/spa/home
trustedurl中的lists正则写的是 lists: [/https:\/\/devh5-study\.hismarttv\.com\/.*/]
src的地址下是可以正常通信的,跳转到其他路由下由于页面地址的改变,无法再通信。

页面向快应用通信:

  // 往快应用发送消息
  postMsg2QuickApp = (action, data) => {
    const msg = JSON.stringify({
      action,
      data
    });
    window.system.postMessage(msg);
  }
快应用在onMessage中接收:
  onMessage(e) {
    // message格式:
    // {
    //   // 动作,表示要干什么
    //   action: 'xxxx',
    //   // 数据,该动作附带的额外数据
    //   data: 'xxxx'
    // }
    console.log(JSON.stringify(e));
  },

联系方式

微信号: z956174725

refresh组件与tabs组件嵌套问题

目前tab-content组件下嵌套refresh组件在IDE上没法显示,希望可以解决这个问题,否则开发起来还是很痛苦的,只能真机调试

编译打包常见问题

从小于 0.0.38 版本升级

若 hap-toolkit 从 0.0.37 升级上来,有比较大的改动,其中需要注意的是:

1、项目下面的 .babelrc 文件变更为 babel.config.js 文件。

babel.config.js 内容如:

module.exports = function(api) {

api.cache(true)

return {

presets: ['@babel/preset-env'],

plugins: ['@babel/plugin-transform-modules-commonjs'],

babelrcRoots: ['.', 'node_modules']

}

}

.babelrc 文件需要删除。

2、项目的基础依赖只需要以下模块,package.json 里的 devDependencies 字段如:

{

"devDependencies": {

"babel-eslint": "^10.0.1",

"eslint": "^5.12.1",

"eslint-plugin-hybrid": "0.0.5",

"hap-toolkit": "^0.4.3"

}

}

修改后请将 node_modules 和 package-lock.json 删除,再重新安装依赖。

webpack别名

最新的toolkit不支持外部导入webpack别名了,如果之前有使用到的需要去掉,比如quist-ui
万无一失做法:
1、把config下的文件config配置文件去掉
2、在ux文件里面引入的时候路径写全,示例如下:

<import name="xxx" src="quist-ui/components/quist-xxx/index"></import>

可以扫码100%打开快应用

需求类型
线下推广

需求描述
前提支持快应用的手机,有可能用户手机支持快应用但是从来没有打开过,这种情况下扫码支持打开,或者之前使用过的,不需要中间自己再做一个wap页面通过deeplink 或者hap方式打开

需求场景
门店线下推广,官网介绍,海报展示,面对面推广等等,

如何升级 hap-toolkit 至最新

  1. 将本地 hap-toolkit 升级至最新如 0.4.3: yarn upgrade [email protected] (使用 npmnpm update [email protected]);
  2. 运行 npx hap update --force 命令将本地配置升级(会新建 package.json, 原文件成 old package.json);
  3. 手动将 old package.json 中的自己的额外配置,同步至新的 package.json
  4. 将本地的 node_modulespackage-lock.json: rm -rf node_modules;
  5. 重新安装依赖即可:重新运行 yarn or npm i;

更多详情可参见: nicejade/vuepress-web-app#16 (comment)

使用web组件,fixed元素失效

相关信息

  • 问题类型
    不清楚

  • 引擎版本
    1020

  • 手机型号
    vivox6s,小米9

  • 操作系统
    windows 10

问题描述

使用web组件,在H5页面中的fixed元素失效

复现步骤

1

2

联系方式

wx:15294995462

web组件加载的项目中,video标签全屏播放后,打开带有输入框的界面,点击输入框后有光标但是无法拉起键盘

相关信息

  • 问题类型
    引擎

  • 引擎版本
    预览版 1040

  • 手机型号
    海信:HLTE215T | 小米:Redmi K20pro | OPPO:R9s | 华为:mate9

  • 操作系统

  • IDE版本

  • toolkit版本

问题描述

  1. 期望效果:使用web组件加载的项目中,点击video标签全屏播放视频后,打开带有输入框的界面,点击输入框后正常拉起键盘
  2. 实际效果:使用web组件加载的项目中,点击video标签全屏播放视频后,打开带有输入框的界面,点击输入框后有光标但是无法拉起键盘
  3. 错误栈

复现步骤

  1. 使用web组件加载项目,eduWebSrc为项目地址
    <web
    id="eduWeb"
    src="{{eduWebSrc}}"
    trustedurl="{{lists}}"
    allowthirdpartycookies="{{allowthirdpartycookies}}"
    onpagestart="{{onPageStart}}"
    onerror="{{onError}}"
    onmessage="{{onMessage}}"
  2. 使用快应用调试器+快应用预览版1040打开,加载的项目中有可播放的视频,视频由video标签播放,未对video标签做任何控制,由系统处理。
  3. 点击video标签的播放按钮,再点击全屏播放
  4. 打开带有输入框的界面,点击输入框后有光标但是无法拉起键盘

联系方式

微信 z956174725

样式错乱

需求类型

需求描述

需求场景

参考

联系方式和应用名

与webview 通讯 onmessage 事件有bug

相关信息

  • 问题类型 按照文档中,非常简单的代码范例都有如下2个bug

https://doc.quickapp.cn/widgets/web.html

system.onmessage = function(data) {
console.log('message received: ' + data)
}
system.postMessage('hello')

1 bug1 : 使用 onmessage 和 postMessage 与webview, 通讯时, 当快应用中使用postMessage 传递消息后, 在webview 的onmessage无法接受到消息. 现象就是没任何反应, webview 中的system.onmessage没有任何触发运行.

2 bug2: 在webview 中 使用 postMessage 给快应用传消息后, 会触发 webview 的 system.onmessage 事件, 导致接受到上一次的快应用通过postMessage的发出的消息. 期望: 应该不触发onmessage事件.

  • 引擎版本
    所有机型的1020版本都有此问题, 包括 vivo , 华为大部分机型.

数组内元素更新后,UI组件不更新

  • 手机型号
    全部

问题描述

数组类型的数据,数据整体赋值,比如「this.list = newList」更新后列表组件无法获取最新的数据,无法更新UI。除非先执行「this.list = []」。

复现步骤

普通 for 生成组件列表,然后更新数据。

  • 尝试 $forceUpdate,无效
  • 尝试 splice 数组重新插入数据,无效

html部分,就是普通的 for 生成一系列自定义组件:
<div class="time-list fxd-c fx-1"> <time-item for="{{list}}" subname="{{$item.title}}" active="{{$item.active}}" desc="{{$item.desc}}" @click="onItemClick($item.id)" @change="onItemStatusChange($item.id)" ></time-item> </div>

而 TimeItem 内部,样式根据属性 active 产生变化:
<text class="time-display-name {{active ? 'active':'inactive'}}"> {{name}} </text>

JS:
const list = JSON.parse(JSON.stringify(this.list));
const item = list.find(item => item.id === id);
item.active = newStatus; // 改变状态,结果却无效
this.list = list;

image

联系方式

微信:z158758158758

vivo y66 tab滑动闪退问题

  • IDE 版本: 1.3.1.0
  • hap-toolkit 版本: toolkit 0.3.1
  • 平台引擎版本: vivo 1030 应用自带 vivo 1040预览版
  • 操作系统: win 7
  • node.js 版本: v10.14.2

如何复现?

Tab 旋转90度,纵向滑动, tab-content内image等全屏显示图片。

预期效果

滑动不闪退

实际效果

滑动20条数据左右闪退到调试开始界面

无法正常编译

Issue Type: Bug

快应用开发工具 manifest.json 文件中 router 下包含 widgets 字段,工具无法正常编译且会导致扩展程序崩溃

manifest.json

"router": {
    "entry": "pages/index",
    "pages": {
      "pages/index": {
        "component": "index",
        "path": "/pages/index"
      },
      "pages/quickcard": {
        "component": "index",
        "path": "/pages/quickcard"
      }
    },
    "widgets": {
      "pages/quickcard": {
        "name": "快应用卡片",
        "description": "时间你好",
        "component": "index",
        "path": "/pages/quickcard",
        "features": [
          {
            "name": "system.router"
          }
        ]
      }
    }
 }

开发工具编译

image

quickapp IDE version: 快应用开发工具 1.3.1 (d310113bfb1eb7a7ee95b78991aa8fe4ca4a5d51, 2019-03-30T08:43:00.376Z)
OS version: Windows_NT x64 10.0.17763

System Info
Item Value
CPUs Intel(R) Core(TM) i5-6400 CPU @ 2.70GHz (4 x 2712)
GPU Status 2d_canvas: enabled
checker_imaging: disabled_off
flash_3d: enabled
flash_stage3d: enabled
flash_stage3d_baseline: enabled
gpu_compositing: enabled
multiple_raster_threads: enabled_on
native_gpu_memory_buffers: disabled_software
rasterization: enabled
video_decode: enabled
video_encode: enabled
webgl: enabled
webgl2: enabled
Memory (System) 7.88GB (1.05GB free)
Process Argv
Screen Reader no
VM 0%
Extensions: none

全面屏手机底部按钮栏是否显示监听

需求类型

不清楚

需求描述

全面屏手机的底部按钮栏使用户可以控制显示、隐藏的,在按钮栏不变的前提下获取的高度是ok的,但是在底部按钮栏显示状态改变时,高度依旧是状态栏改变之前的高度。
建议,添加底部按钮栏状态监听事件,以便用户自适应屏幕高度以给用户更好的体验。

需求场景

在自定义titleBar的情况下,页面以上部分为四个大分类位置固定,页面下部分为list(参考快应用【周边生活排行】),需要根据是否有底部按钮栏来设置list的高度

参考

可参考【百度地图app】用户手动改变底部按钮栏显示时,地图的自适应(需求场景、参考可以通过微信联系,有录屏信息)

联系方式和应用名

微信号 15832975272 快应用 周边生活排行

动画属性transform-origin无效

相关信息

  • 问题类型
    不清楚
  • 引擎版本
    1020
  • 手机型号
    魅族16th、荣耀8、三星s9、索尼xz2

问题描述

transform: rotate(90deg);
transform-origin: 0px 0px;

元素旋转时,设置origin无效

联系方式

wx:hejiaoshou811

自定义组件动态修改样式不生效

相关信息

  • 问题类型: 引擎
  • 引擎版本 : 1040
  • 手机型号: vivo X21UD A
  • 操作系统 : Mac OS 10.14
  • IDE版本 : 1.3.1
  • toolkit版本 : 0.4.3

问题描述

  1. 预期效果:自定义组件通过传参,�动态修改组件内部 css 样式 font-size 、color ,样式应该正常生效。
  2. 实际效果:动态修改样式无效。

复现步骤

复现步骤:

1. 创建自定组件,在使用组件页面 import 并给组件传递参数。
2. 自定组件接收参数,并动态修改样式。
3. 修改未生效。

联系方式

wx: 328762691

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.