我的wepy使用小册
学习途中总是忘心大,看了官方文档,自己也总结写一遍吧,写一遍记得印象更深刻~
目录
1、wepy的安装与使用
2、vscode 使用 wepy的小技巧
3、微信开发者工具使用
4、项目配置
5、功能特性
6、进阶学习
复制代码
一、wepy的安装与使用
wepy官方文档
全局安装或更新WePY命令行工具
npm install wepy-cli -g
复制代码
初始化项目
wepy init standard test_wepy // 标准模式,包含了react等测试wepy init empty test_wepy // 空白模式,适合初始化的空项目
复制代码
安装依赖包
yarn install / npm install
复制代码
项目生成后是这样的
// 以下是空白模式下的目录结构
├── dist 小程序运行代码目录(该目录由WePY的build指令自动编译生成,请不要直接修改该目录下的文件)
├── node_modules
├── src 代码编写的目录(该目录为使用WePY后的开发目录)
| ├── components WePY组件目录(组件不属于完整页面,仅供完整页面或其他组件引用)
| | ├── com_a.wpy 可复用的WePY组件a
| | └── com_b.wpy 可复用的WePY组件b
| ├── pages WePY页面目录(属于完整页面)
| | ├── index.wpy index页面(经build后,会在dist目录下的pages目录生成index.js、index.json、index.wxml和index.wxss文件)
| | └── other.wpy other页面(经build后,会在dist目录下的pages目录生成other.js、other.json、other.wxml和other.wxss文件)
| └── app.wpy 小程序配置项(全局数据、样式、声明钩子等;经build后,会在dist目录下生成app.js、app.json和app.wxss文件)
└── package.json 项目的package配置
复制代码
开启实时编译功能
npm run dev
复制代码
至此我们的第一个wepy小程序项目构建完成。
二、vscode 使用 wepy的小技巧
首选项-应用程序-setting.json加上如下代码,重启就ok
"files.associations": {"*.vue": "vue","*.wpy": "vue","*.wxml": "html","*.wxss": "css"
},
"emmet.syntaxProfiles": {"vue-html": "html","vue": "html"
}
复制代码
- 关于wepy的一些插件
三、微信开发者工具使用
注意事项
1. 使用微信开发者工具-->添加项目,项目目录请选择dist目录。
2. 微信开发者工具-->项目-->关闭ES6转ES5。 【重要】:漏掉此项会运行报错。
3. 微信开发者工具-->项目-->关闭上传代码时样式自动补全。 【重要】:某些情况下漏掉此项也会运行报错。
4. 微信开发者工具-->项目-->关闭代码压缩上传。 【重要】:开启后,会导致真机computed, props.sync 等等属性失效。
复制代码
四、项目配置
1.7.0
之后的版本init
新生成的代码包会在根目录包含project.config.json
文件,之前生成的代码包可能不存在project.config.json
文件。
{"description": "A WePY project","setting": {"urlCheck": true, // 对应不检查安全域名选项,开启。 如果已配置好安全域名则建议关闭。"es6": false, // 对应关闭ES6转ES5选项,关闭。 重要:未关闭会运行报错。"postcss": false, // 对应关闭上传代码时样式自动补全选项,关闭。 重要:某些情况下漏掉此项也会运行报错。"minified": false // 对应关闭代码压缩上传选项,关闭。重要:开启后,会导致真机computed, props.sync 等等属性失效。},"compileType": "miniprogram","appid": "touristappid","projectname": "empty_wepy","miniprogramRoot": "./dist" // 自己创建一个wepy项目,竟然不用在dist目录下也可以在开发者工具中打开,原因在此
}复制代码
五、功能特性
1、单文件模式
原生小程序要求app实例必须有3个文件:
app.js、app.json、app.wxss
,而page页面则一般有4个文件:page.js、page.json、page.wxml、page.wxss
,并且还要求app实例的3个文件以及page页面的4个文件除后缀名外必须同名
而在WePY中则使用了单文件模式,将原生小程序app实例的3个文件统一为app.wpy,page页面的4个文件统一为page.wpy。使用WePY开发前后的开发目录结构对比如下:
// 原生小程序的目录结构:
project
├── pages
| ├── index
| | ├── index.js index 页面逻辑
| | ├── index.json index 页面配置
| | ├── index.wxml index 页面结构
| | └── index.wxss index 页面样式
| └── log
| ├── log.js log 页面逻辑
| ├── log.json log 页面配置
| ├── log.wxml log 页面结构
| └── log.wxss log 页面样式
├── app.js 小程序逻辑
├── app.json 小程序公共配置
└── app.wxss 小程序公共样式
复制代码
// wepy小程序
project
└── src├── pages| ├── index.wpy index 页面逻辑、配置、结构、样式| └── log.wpy log 页面逻辑、配置、结构、样式└──app.wpy 小程序逻辑、公共配置、公共样式
复制代码
2、默认使用babel编译,支持ES6/7的一些新特性
用户可以通过修改wepy.config.js(老版本使用.wepyrc)配置文件,配置自己熟悉的babel环境进行开发。默认开启使用了一些新的特性如promise、async/await。
import wepy from 'wepy';export default class Index extends wepy.page {getData() {return new Promise((resolve, reject) => {setTimeout(() => {resolve({data: 123});}, 3000);});};async onLoad() {let data = await this.getData();console.log(data.data);};
}
复制代码
3、针对原生API进行优化
对小程序原生API进行promise处理,同时修复了一些原生API的缺陷,比如:wx.request的并发问题等。
// 原生onLoad = function () {var self = this;wx.login({success: function (data) {wx.getUserInfo({success: function (userinfo) {self.setData({userInfo: userinfo});}});}});
}
复制代码
// wepyimport wepy from 'wepy';async onLoad() {await wepy.login();this.userInfo = await wepy.getUserInfo();
}
复制代码
- 在同时并发10个request请求测试时: 使用WePY后:
4、开发模式转换
WePY框架在开发过程中参考了Vue等现有框架的一些语法风格和功能特性,对原生小程序的开发模式进行了再次封装,更贴近于MVVM架构模式。
//index.wpy中的<script>部分import wepy from 'wepy';//通过继承自wepy.page的类创建页面逻辑
export default class Index extends wepy.page {//可用于页面模板绑定的数据data = {motto: 'Hello World',userInfo: {}};//事件处理函数(集中保存在methods对象中)methods = {bindViewTap () {console.log('button clicked');}};//页面的生命周期函数onLoad() {console.log('onLoad');};
}
复制代码
5、支持组件化开发
具体详见下面。
六、进阶学习
1、wepy.config.js配置文件说明
执行wepy init standard demo
后,会生成类似下面这样的配置文件。
const path = require('path');
var prod = process.env.NODE_ENV === 'production';module.exports = {wpyExt: '.wpy',eslint: true,cliLogs: !prod,build: {web: {htmlTemplate: path.join('src', 'index.template.html'),htmlOutput: path.join('web', 'index.html'),jsOutput: path.join('web', 'index.js')}},resolve: {alias: {counter: path.join(__dirname, 'src/components/counter'),'@': path.join(__dirname, 'src')},aliasFields: ['wepy', 'weapp'],modules: ['node_modules']},compilers: {less: {compress: prod},/*sass: {outputStyle: 'compressed'},*/babel: {sourceMap: true,presets: ['env'],plugins: ['transform-class-properties','transform-decorators-legacy','transform-object-rest-spread','transform-export-extensions',]}},plugins: {},appConfig: {noPromiseAPI: ['createSelectorQuery']}
}if (prod) {// 压缩sass// module.exports.compilers['sass'] = {outputStyle: 'compressed'}// 压缩jsmodule.exports.plugins = {uglifyjs: {filter: /\.js$/,config: {}},// 图片压缩imagemin: {filter: /\.(jpg|png|jpeg)$/,config: {jpg: {quality: 80},png: {quality: 80}}}}
}复制代码
2、.wpy文件说明
.wpy文件的编译过程过下:
一个.wpy文件可分为三大部分,各自对应于一个标签:脚本部分: 即<script></script>标签中的内容,又可分为两个部分:逻辑部分: 除了config对象之外的部分,对应于原生的.js文件;配置部分: 即config对象,对应于原生的.json文件。结构部分: 即<template></template>模板部分,对应于原生的.wxml文件。样式部分: 即<style></style>样式部分,对应于原生的.wxss文件。
复制代码
其中,小程序入口文件app.wpy
不需要template
,所以编译时会被忽略。.wpy
文件中的script、template、style
这三个标签都支持lang
和src
属性,lang
决定了其代码编译过程,src
决定是否外联代码,存在src属性且有效时,会忽略内联代码。
<style lang="less" src="page1.less"></style>
<template lang="wxml" src="page1.wxml"></template>
<script>// some code
</script>
复制代码
标签 | lang默认值 | lang支持值 |
---|---|---|
style | css | css、less、scss、stylus、postcss |
template | wxml | wxml、xml、pug(原jade) |
script | babel | babel、TypeScript |
3、脚本解释
小程序入口app.wpy
<style lang="less">
</style><script>
import wepy from 'wepy'export default class extends wepy.app {// 全局配置config = {pages: ['pages/index', // 首页'pages/find', // 发现页'pages/my' // 个人中心],window: {backgroundTextStyle: 'light',navigationBarBackgroundColor: '#fff',navigationBarTitleText: 'meils',navigationBarTextStyle: 'black'}}onLaunch() {console.log('on launch')}
}
</script>复制代码
入口文件app.wpy
中所声明的小程序实例继承自wepy.app
类,包含一个config
属性和其它全局属性、方法、事件。其中config
属性对应原生的app.json
文件,build
编译时会根据config
属性自动生成app.json
文件,如果需要修改config
中的内容,请使用微信提供的相关API
。
页面page.wpy
<script>
import wepy from 'wepy';
import Counter from '../components/counter'; // 组件export default class Page extends wepy.page {config = {};components = {counter1: Counter};data = {};methods = {};events = {};onLoad() {};// Other properties
}
</script><template lang="wxml"><view><!--微信原生组件--></view><counter1></counter1>
</template><style lang="less">
/** less **/
</style>
复制代码
- 页面文件page.wpy中所声明的页面实例继承自wepy.page类,该类的主要属性介绍如下:
属性 | 说明 |
---|---|
config | 页面配置对象,对应于原生的page.json 文件,类似于app.wpy 中的config |
components | 页面组件列表对象,声明页面所引入的组件列表 |
data | 页面渲染数据对象,存放可用于页面模板绑定的渲染数据 |
methods | wxml事件处理函数对象,存放响应wxml中所捕获到的事件的函数,如bindtap 、bindchange |
events | WePY组件事件处理函数对象,存放响应组件之间通过 $broadcast 、$emit 、$invoke 所传递的事件的函数 |
其它 | 小程序页面生命周期函数,如onLoad、onReady等,以及其它自定义的方法与属性 |
组件com.wpy
<template lang="wxml"><view> </view>
</template><script>
import wepy from 'wepy';
export default class Com extends wepy.component {components = {};data = {};methods = {};events = {};// Other properties
}
</script><style lang="less">
/** less **/
</style>
复制代码
组件文件com.wpy
中所声明的组件实例继承自wepy.component
类,除了不需要config
配置以及页面特有的一些生命周期函数之外,其属性与页面属性大致相同。
4、实例
在 WePY 中,小程序被分为三个实例:小程序实例App
、页面实例Page
、组件实例Component
。其中Page
实例继承自Component
。
import wepy from 'wepy';// 声明一个App小程序实例
export default class MyAPP extends wepy.app {
}// 声明一个Page页面实例
export default class IndexPage extends wepy.page {
}// 声明一个Component组件实例
export default class MyComponent extends wepy.component {
}
复制代码
App小程序实例
App
小程序实例中主要包含小程序生命周期函数
、config配置对象
、globalData全局数据对象
,以及其他自定义方法与属性。
import wepy from 'wepy';export default class MyAPP extends wepy.app {customData = {}; // 自定义数据对象customFunction () { } // 自定义方法onLaunch () {} // 生命周期,加载的时候onShow () {} // 页面展示config = {} // 对应 app.json 文件globalData = {} // 全局对象
}
复制代码
在Page页面实例中,可以通过this.$parent来访问App实例。
Page页面实例和Component组件实例
import wepy from 'wepy';export default class MyPage extends wepy.page {
// export default class MyComponent extends wepy.component {customData = {} // 自定义数据customFunction () {} //自定义方法onLoad () {} // 在Page和Component共用的生命周期函数onShow () {} // 只在Page中存在的页面生命周期函数config = {}; // 只在Page实例中存在的配置数据,对应于原生的page.json文件data = {}; // 页面所需数据均需在这里声明,可用于模板数据绑定components = {}; // 声明页面中所引用的组件,或声明组件中所引用的子组件mixins = []; // 声明页面所引用的Mixin实例computed = {}; // 声明计算属性(详见后文介绍)watch = {}; // 声明数据watcher(详见后文介绍)methods = {}; // 声明页面wxml中标签的事件处理函数。注意,此处只用于声明页面wxml中标签的bind、catch事件,自定义方法需以自定义方法的方式声明events = {}; // 声明组件之间的事件处理函数
}
复制代码
这里需要特别强调一下:
WePY
中的methods
属性只能声明页面wxml
标签的bind、catch
事件,不能声明自定义方法,这与Vue
中的用法是不一致的。
5、组件
原生小程序支持js模块化,但彼此独立,业务代码与交互事件仍需在页面处理。无法实现组件化的松耦合与复用的效果。
例如模板A中绑定一个bindtap="myclick",模板B中同样绑定一样bindtap="myclick",那么就会影响同一个页面事件。对于数据同样如此。因此,只有通过改变变量或者事件方法,或者给其加不同前缀才能实现绑定不同事件或者不同数据。当页面复杂之后就十分不利于开发维护。
因此,在WePY中实现了小程序的组件化开发,组件的所有业务与功能在组件本身实现,组件与组件之间彼此隔离,上述例子在WePY的组件化开发过程中,A组件只会影响到A所绑定的myclick,B也如此。
普通组件引用
/**
project
└── src├── components| └── child.wpy├── pages| ├── index.wpy index 页面配置、结构、样式、逻辑| └── log.wpy log 页面配置、结构、样式、逻辑└──app.wpy 小程序配置项(全局公共配置、公共样式、声明钩子等)
**/// index.wpy<template><!-- 以`<script>`脚本部分中所声明的组件ID为名命名自定义标签,从而在`<template>`模板部分中插入组件 --><child></child>
</template><script>import wepy from 'wepy';//引入组件文件import Child from '../components/child';export default class Index extends wepy.page {//声明组件,分配组件id为childcomponents = {child: Child};}
</script>
复制代码
需要注意的是,WePY中的组件都是静态组件,是以组件ID作为唯一标识的,每一个ID都对应一个组件实例,当页面引入两个相同ID的组件时,这两个组件共用同一个实例与数据,当其中一个组件数据变化时,另外一个也会一起变化。
如果需要避免这个问题,则需要分配多个组件ID和实例。代码如下:
<template><view class="child1"><child></child></view><view class="child2"><anotherchild></anotherchild></view>
</template><script>import wepy from 'wepy';import Child from '../components/child';export default class Index extends wepy.page {components = {//为两个相同组件的不同实例分配不同的组件ID,从而避免数据同步变化的问题child: Child,anotherchild: Child};}
</script>
复制代码
注意:WePY中,在父组件template模板部分插入驼峰式命名的子组件标签时,不能将驼峰式命名转换成短横杆式命名(比如将childCom转换成child-com),这与Vue中的习惯是不一致。
组件的循环渲染
当需要循环渲染WePY组件时(类似于通过wx:for循环渲染原生的wxml标签),必须使用WePY定义的辅助标签,代码如下:
/**
project
└── src├── components| └── child.wpy├── pages| ├── index.wpy index 页面配置、结构、样式、逻辑| └── log.wpy log 页面配置、结构、样式、逻辑└──app.wpy 小程序配置项(全局样式配置、声明钩子等)
**/// index.wpy<template><!-- 注意,使用for属性,而不是使用wx:for属性 --><repeat for="{{list}}" key="index" index="index" item="item"><!-- 插入<script>脚本部分所声明的child组件,同时传入item --><child :item="item"></child></repeat>
</template><script>import wepy from 'wepy';// 引入child组件文件import Child from '../components/child';export default class Index extends wepy.page {components = {// 声明页面中要使用到的Child组件的ID为childchild: Child}data = {list: [{id: 1, title: 'title1'}, {id: 2, title: 'title2'}]}}
</script>
复制代码
5、computed
computed计算属性,是一个有返回值的函数,可直接被当作绑定数据来使用。因此类似于data属性,代码中可通过this.计算属性名来引用,模板中也可通过{{ 计算属性名 }}来绑定数据。
需要注意的是,只要是组件中有任何数据发生了改变,那么所有计算属性就都会被重新计算。
data = {a: 1}// 计算属性aPlus,在脚本中可通过this.aPlus来引用,在模板中可通过{{ aPlus }}来插值computed = {aPlus () {return this.a + 1}}
复制代码
6、watcher 监听器
通过监听器watcher能够监听到任何属性的更新。监听器在watch对象中声明,类型为函数,函数名与需要被监听的data对象中的属性同名,每当被监听的属性改变一次,监听器函数就会被自动调用执行一次。
监听器适用于当属性改变时需要进行某些额外处理的情形。
data = {num: 1}// 监听器函数名必须跟需要被监听的data对象中的属性num同名,// 其参数中的newValue为属性改变后的新值,oldValue为改变前的旧值watch = {num (newValue, oldValue) {console.log(`num value: ${oldValue} -> ${newValue}`)}}// 每当被监听的属性num改变一次,对应的同名监听器函数num()就被自动调用执行一次onLoad () {setInterval(() => {this.num++;this.$apply();}, 1000)}
复制代码
7、props 传值
props传值在WePY中属于父子组件之间传值的一种机制,包括静态传值
与动态传值
。
- 静态传值
静态传值为父组件向子组件传递常量数据,因此只能传递String字符串类型。
<child title="mytitle"></child>// child.wpy
props = {title: String
};onLoad () {console.log(this.title); // mytitle
}
复制代码
- 动态传值
通过使用
.sync
修饰符来达到父组件数据绑定至子组件的效果,也可以通过设置子组件props
的twoWay: true
来达到子组件数据绑定至父组件的效果。那如果既使用.sync
修饰符,同时子组件props
中添加的twoWay: true
时,就可以实现数据的双向绑定了。
// parent.wpy<child :title="parentTitle" :syncTitle.sync="parentTitle" :twoWayTitle="parentTitle"></child>data = {parentTitle: 'p-title'
};// child.wpyprops = {// 静态传值title: String,// 父向子单向动态传值syncTitle: {type: String,default: 'null'},twoWayTitle: {type: String,default: 'nothing',twoWay: true}
};onLoad () {console.log(this.title); // p-titleconsole.log(this.syncTitle); // p-titleconsole.log(this.twoWayTitle); // p-titlethis.title = 'c-title';console.log(this.$parent.parentTitle); // p-title.this.twoWayTitle = 'two-way-title';this.$apply();console.log(this.$parent.parentTitle); // two-way-title. --- twoWay为true时,子组件props中的属性值改变时,会同时改变父组件对应的值this.$parent.parentTitle = 'p-title-changed';this.$parent.$apply();console.log(this.title); // 'c-title';console.log(this.syncTitle); // 'p-title-changed' --- 有.sync修饰符的props属性值,当在父组件中改变时,会同时改变子组件对应的值。
}
复制代码
8、组件通信与交互
wepy.component
基类提供$broadcast
、$emit
、$invoke
三个方法用于组件之间的通信和交互,如:
- $broadcast
$broadcast
事件是由父组件发起,所有子组件都会收到此广播事件,除非事件被手动取消。事件广播的顺序为广度优先搜索顺序,如上图,如果页面Page_Index
发起一个$broadcast
事件,那么按先后顺序依次接收到该事件的组件为:ComA、ComB、ComC、ComD、ComE、ComF、ComG、ComH
。如下图:
- $emit
$emit
与$broadcast
正好相反,事件发起组件的所有祖先组件会依次接收到$emit
事件。如果组件ComE发起一个$emit
事件,那么接收到事件的先后顺序为:组件ComA
、页面Page_Index
。如下图:
- $invoke
$invoke是一个页面或组件对另一个组件中的方法的直接调用,通过传入组件路径找到相应的组件,然后再调用其方法。
比如,想在页面Page_Index中调用组件ComA的某个方法:
this.$invoke('ComA', 'someMethod', 'someArgs');
复制代码
如果想在组件ComA中调用组件ComG的某个方法:
this.$invoke('./../ComB/ComG', 'someMethod', 'someArgs');
复制代码
9、组件自定义事件处理函数
可以通过使用.user修饰符为自定义组件绑定事件,如:@customEvent.user="myFn"
其中,@
表示事件修饰符,customEvent
表示事件名称,.user
表示事件后缀。
目前总共有三种事件后缀:
.default
: 绑定小程序冒泡型事件,如bindtap,.default后缀可省略不写;
.stop
: 绑定小程序捕获型事件,如catchtap;
.user
: 绑定用户自定义组件事件,通过$emit触发。注意,如果用了自定义事件,则events中对应的监听函数不会再执行。
// index.wpy<template><child @childFn.user="parentFn"></child>
</template><script>import wepy from 'wepy'import Child from '../components/child'export default class Index extends wepy.page {components = {child: Child}methods = {parentFn (num, evt) {console.log('parent received emit event, number is: ' + num)}}}
</script>// child.wpy<template><view @tap="tap">Click me</view>
</template><script>import wepy from 'wepy'export default class Child extends wepy.component {methods = {tap () {console.log('child is clicked')this.$emit('childFn', 100)}}}
</script>
复制代码
10、slot 组件内容分发插槽
示例:
在Panel组件中有以下模板:
<view class="panel"><slot name="title">默认标题</slot><slot name="content">默认内容</slot>
</view>
复制代码
在父组件中使用Panel子组件时,可以这样使用:
<panel><view slot="title">新的标题</view><view slot="content"><text>新的内容</text></view>
</panel>
复制代码
11、Mixin 混合
混合可以将组件之间的可复用部分抽离,从而在组件中使用混合时,可以将混合的数据,事件以及方法注入到组件之中。混合分为两种:
- 默认式混合
- 兼容式混合
默认混合
对于组件data数据
,components组件
,events事件
以及其它自定义方法
采用默认式混合,即如果组件未声明该数据,组件,事件,自定义方法等,那么将混合对象中的选项将注入组件之中。如果组件已声明的选项将不受影响
。
// mixins/test.js
import wepy from 'wepy';export default class TestMixin extends wepy.mixin {data = {foo: 'foo defined by page',bar: 'bar defined by testMix'};methods = {tap () {console.log('mix tap');}}
}// pages/index.wpy
import wepy from 'wepy';
import TestMixin from './mixins/test';export default class Index extends wepy.page {data = {foo: 'foo defined by index'};mixins = [TestMixin ];onShow() {console.log(this.foo); // foo defined by index 默认的console.log(this.bar); // bar defined by testMix 使用mixin中的}
}
复制代码
兼容式混合
对于组件methods响应事件,以及小程序页面事件将采用兼容式混合,即先响应组件本身响应事件,然后再响应混合对象中响应事件。注意,这里事件的执行顺序跟Vue
中相反,Vue
中是先执行mixin
中的函数, 再执行组件本身的函数。
// mixins/test.js
import wepy from 'wepy';export default class TestMixin extends wepy.mixin {methods = {tap () {console.log('mixin tap');}};onShow() {console.log('mixin onshow');}
}// pages/index.wpy
import wepy from 'wepy';
import TestMixin from './mixins/test';export default class Index extends wepy.page {mixins = [TestMixin];methods = {tap () {console.log('index tap');}};onShow() {console.log('index onshow');}
}// index onshow
// mixin onshow
// ----- when tap
// index tap
// mixin tap
复制代码
12、数据绑定
原生小程序的数据绑定方式
this.setData({title: 'this is title'});
复制代码
因为小程序架构本身原因,页面渲染层和JS逻辑层分开的,setData操作实际就是JS逻辑层与页面渲染层之间的通信,那么如果在同一次运行周期内多次执行setData操作时,那么通信的次数是一次还是多次呢?这个取决于API本身的设计。
WePY数据绑定方式
this.title = 'this is title';
复制代码
需注意的是,在异步函数中更新数据的时候,必须手动调用$apply方法,才会触发脏数据检查流程的运行。如:
setTimeout(() => {this.title = 'this is title';this.$apply();
}, 3000);
复制代码
13、优化细节
请求
// 原生代码:wx.request({url: 'xxx',success: function (data) {console.log(data);}
});// WePY 使用方式, 需要开启 Promise 支持,参考开发规范章节
wepy.request('xxxx').then((d) => console.log(d));// async/await 的使用方式, 需要开启 Promise 和 async/await 支持,参考 WIKI
async function request () {let d = await wepy.request('xxxxx');console.log(d);
}
复制代码
优化事件参数传递
// 原生的事件传参方式:<view data-id="{{index}}" data-title="wepy" data-other="otherparams" bindtap="tapName"> Click me! </view>Page({tapName: function (event) {console.log(event.currentTarget.dataset.id)// output: 1console.log(event.currentTarget.dataset.title)// output: wepyconsole.log(event.currentTarget.dataset.other)// output: otherparams}
});// WePY 1.1.8以后的版本,只允许传string。<view @tap="tapName({{index}}, 'wepy', 'otherparams')"> Click me! </view>methods: {tapName (id, title, other, event) {console.log(id, title, other)// output: 1, wepy, otherparams}
}
复制代码
组件代替模板和模块
// 原生代码:<!-- item.wxml -->
<template name="item"><text>{{text}}</text>
</template><!-- index.wxml -->
<import src="item.wxml"/>
<template is="item" data="{{text: 'forbar'}}"/><!-- index.js -->
var item = require('item.js')// WePY
<!-- /components/item.wpy --><text>{{text}}</text><!-- index.wpy -->
<template><com></com>
</template>
<script>import wepy from 'wepy';import Item from '../components/item';export default class Index extends wepy.page {components = { com: Item }}
</script>
复制代码
先到这里了,以后再继续补充~~
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- 团体程序设计天梯赛-练习集 L1-039 古风排版
L1-039 古风排版 中国的古人写文字,是从右向左竖向排版的。本题就请你编写程序,把一段文字按古风排版。 输入格式: 输入在第一行给出一个正整数N(<100),是每一列的字符数。第二行给出一个长度不超过1000的非空字符串,以回车结束。 输出格式: 按古风格式排版给定的字…...
2024/4/16 21:31:40 - spring security添加验证码
使用spring security的时候,框架会帮我们做账户密码的验证,但是如我们需要添加一个验证码,就需要对配置文件进行修改,自己写一个方法在验证账户密码之前验证验证码。(关键是提取authenticationManager身份认证管理器,然后在身份验证之前进行验证码验证,然后再交给验证器验…...
2024/4/28 9:48:28 - 人人都懂的编程课(Python)
人人都懂的编程课(Python) 本课程主要通过使用Python来教育每个人对计算机进行基本编程知识。在学习本课程之前不需要任何的先决条件,只要会简单的数学知识即可。任何人只要具有现在计算机基本知识,都可以学习本课里所讲的知识。 课程描述本课程主要为了初学者学习第一门编…...
2024/4/24 8:34:11 - 【linux】ubantu下Apache无法启动(80端口被占用)
本来今天回来想晚会bootstarp的,但是发现ubantu下80端口被占用,apache无法启动,很是蛋疼! 索性又学里一招,查看80端口被哪个货占用里哈哈哈哈! 打开终端输入netstat -lnp|grep 80 但是没闲是哪个进程,所以经sudo netstat -lnp|grep 80哈哈 就出来里 找到他kill掉就OK了。…...
2024/4/16 21:32:40 - 有线网(校园网)下WIN10 ie、edge浏览器不能上网,其他浏览器可以的解决方法。
最近遇到有线网下win10 不能使用ie、edge浏览器的问题,而其他的像搜狗、firefox是可以使用的。我是这样解决这个问题的 在运行中输入 netsh winsock reset 然后回车就可以了。netsh winsock reset命令,作用是重置 Winsock 目录。如果一台机器上的Winsock协议配置有问题的话…...
2024/4/16 21:32:16 - wepy框架-触摸内容滑动
文档wepy快速指南 小程序框架wepy开发文档 wepy开源 wepy官方文档 微信小程序wepy框架资源汇总1:微信小程序触摸内容滑动解决方案,适用于wepy框架 用命令安装 npm install wepy-com-swiper --save 或者 cnpm install wepy-com-swiper --save2:在WebStorm里面打开初始化生成的项…...
2024/4/18 8:10:49 - Spring security 密码加密问题
Spring security 密码加密问题1、问题描述2、问题分析3、问题解决4、总结 1、问题描述 主要就是这句异常:There is no PasswordEncoder mapped for the id "null" 2020-05-08 20:57:05.522 ERROR 10712 --- [nio-8006-exec-7] o.a.c.c.C.[.[.[/].[dispatcherServlet…...
2024/5/2 15:25:07 - windowsxp网卡不能收发数据
windowsxp网卡不能收发数据: 1、网卡收发数据为0 2、重置网卡:netsh winsock reset 3、专业修复网卡,重置winsock工具转载于:https://blog.51cto.com/2526575/964189...
2024/4/16 21:33:43 - solr入门体验
转载:http://www.cnblogs.com/ibook360/archive/2011/11/22/2258686.html...
2024/5/2 8:11:15 - CCCC-GPLT L1-039. 古风排版 团体程序设计天梯赛
中国的古人写文字,是从右向左竖向排版的。本题就请你编写程序,把一段文字按古风排版。输入格式:输入在第一行给出一个正整数N(<100),是每一列的字符数。第二行给出一个长度不超过1000的非空字符串,以回车结束。输出格式:按古风格式排版给定的字符串,每列N个字符(除…...
2024/4/26 14:12:34 - 如何解除80端口被占用
虽然本文章主要以80端口号为例,但是其他的端口号也可以使用该方法1、在windows下如何查看80端口占用情况?是被哪个进程占用?如何终止等.(1)点击"开始"--"运行"(快捷键:win+R),输入"cmd"后点击确定按钮,进入DOS窗口,接下来分别运行以下命…...
2024/4/28 15:46:03 - wepy根据不同打包命令配置不同的全局变量
功能需求:要求能够根据不同打包命令(测试环境,线上环境)配置出全局变量,根据这个全局变量来自动寻找对应环境的接口域名。如果仅仅做了1中的配置,仅能从配置文件中获取NODE_ENV的值,在业务代码上是获取不到的。1:在package.json文件中配置如下信息:"scripts"…...
2024/4/16 21:34:07 - 易学性vs易用性,产品应该选哪边?
引言:“你觉得用户们都是笨蛋吗?如果不是,那么为什么我们要把应用程序简化到5 岁的小孩都会用的程度呢?” 时不时,我们会卷到应用程序易用性的讨论中。然而,无论是对一个特定的功能还是针对整个应用程序,这种讨论几乎总是集中在如何使这个应用让用户快速上手上。 本文…...
2024/4/23 5:10:22 - 5.2的Dr.com客户端启动不了,3.7的客户端提示本机未安装TCPIP协议
今天,电脑重启后,就遇到了上面的问题。以下是解决办法: 1、win+r出现命令提示窗口输入cmd 2、然后输入netsh winsock reset回车即可 3、然后等待重启,在开机就可以了说明一下这段命令:简单来说netsh winsock reset命令含义是重置 Winsock 目录。如果一台机器上的Winsock协…...
2024/4/18 8:02:06 - steamcommunity本地反代443端口/80端口被占用解决办法
首先说结论:(1)443端口占用,网上解决方案一大堆。我这里就不废话了。(2)80端口占用就比较麻烦了,其实说到底,占用该端口的肯定都是一些系统级的软件。如:sqlserver (微软的)、 IIS(微软的)、Apache、或者mysql、oracle 之类的数据库软件、或者虚拟机软件如VMWare等等…...
2024/4/16 21:32:40 - PAT团队程序设计天梯赛L1-039 古风排版
题目要求题目分析假设num表示每一列的字符个数Java输出的时候是一行一行输出而不是一列一列的,所以应该求出每一行的字符排列。因为字符串的最后一个字符是在第一列,所以需要提前考虑用空格将字符串填充成为能够整除num的长度。填充的个数是num - string.length() % num,但是…...
2024/4/20 15:52:52 - wepy 安装less/sass
文档wepy快速指南 小程序框架wepy开发文档 wepy开源 wepy官方文档 微信小程序wepy框架资源汇总使用sass原因 1:Sass完全兼容所有版本的CSS 2:Sass拥有比其他任何CSS扩展语言更多的功能和特性 3:增加了一些高级功能,这些拓展令 CSS 更加强大项目里会使用到,所以要提前安装一…...
2024/4/16 21:33:49 - wepy -底部tabar导航效果(三)
1、在wepy中 props传值在WePY中属于父子组件之间传值的一种机制,包括静态传值与动态传值。 2、其用法对应小程序中 properties:{};import wepy from wepy; export default class Index extends wepy.component {data = {{names: "收到粮田",url: "/pages/inde…...
2024/4/24 15:25:16 - 苹果为高中生和社区大学生推出Swift编程课程
来源:威锋网 & MacX 苹果宣布为社区大学生和高中生推出一套全新的为期一年的 App 开发课程,现在已经上架 iBook 商店。这门课程将向学生们传授使用苹果 Swift 开发应用程序的一些要素。 根据外媒 MacRumors 的报道,苹果公司发布了一个新的应用程序开发课程,旨在为那些想…...
2024/4/16 21:33:55 - spring security post 请求403问题
spring security post 请求403问题 加入以下代码<!-- Site Title --><meta name="_csrf" th:content="${_csrf.token}" /><!-- default header name is X-CSRF-TOKEN --><meta name="_csrf_header" th:content="${_cs…...
2024/4/26 8:26:32
最新文章
- Linux系统安装Redis7(详细版)
Linux系统安装Redis7 一、windows安装redis二、Linux安装Redis下载redis编辑redis7.conf文件启动redis-server服务如何关闭redis服务设置Redis开机自启动 一、windows安装redis Window 下安装 下载地址:https://github.com/dmajkic/redis/downloads 下载到的Redi…...
2024/5/2 16:04:04 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/3/20 10:50:27 - 小林coding图解计算机网络|基础篇01|TCP/IP网络模型有哪几层?
小林coding网站通道:入口 本篇文章摘抄应付面试的重点内容,详细内容还请移步: 文章目录 应用层(Application Layer)传输层(Transport Layer)TCP段(TCP Segment) 网络层(Internet Layer)IP协议的寻址能力IP协议的路由能力 数据链路层(Link Lay…...
2024/5/1 13:43:16 - Databend 开源周报第 138 期
Databend 是一款现代云数仓。专为弹性和高效设计,为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务:https://app.databend.cn 。 Whats On In Databend 探索 Databend 本周新进展,遇到更贴近你心意的 Databend 。 支持多表插入 …...
2024/5/1 8:32:06 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/5/1 17:30:59 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/4/30 18:14:14 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/4/29 2:29:43 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/5/2 9:28:15 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/4/27 17:58:04 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/4/27 14:22:49 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/4/28 1:28:33 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/4/30 9:43:09 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/4/27 17:59:30 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/5/2 15:04:34 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/4/28 1:34:08 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/4/26 19:03:37 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/4/29 20:46:55 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/4/30 22:21:04 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/5/1 4:32:01 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/4/27 23:24:42 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/4/28 5:48:52 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/4/30 9:42:22 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/5/2 9:07:46 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/4/30 9:42:49 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57