首页 文章 精选 留言 我的

精选列表

搜索[界面优化],共10010篇文章
优秀的个人博客,低调大师

React 16.13.1 发布,构建用户界面的 JavaScript 库

React 16.13.1 发布了,更新内容如下: React DOM 修复了传统模式 Suspense 中无法触发效果清理功能的错误。这仅影响使用 Suspense 以传统模式进行数据获取的用户,这在技术上不受支持。 对于在类渲染生命周期内发生的跨组件更新(componentWillReceiveProps、shouldComponentUpdate 等),返回警告。 更新说明: https://github.com/facebook/react/releases/tag/v16.13.1

优秀的个人博客,低调大师

React 16.13.0 发布,构建用户界面的 JavaScript 库

React 16.13.0 发布了,更新内容如下: React 当以不适合将来 codemod 的方式使用字符串 ref 时发出警告 (@lunaruanin#17864) 弃用React.createFactory()(@trueadmin#17878) React DOM 在样式更改可能导致意外情况时发出警告 (@sophiebitsin#14181,#18002) 在另一个组件的渲染阶段更新某个功能组件时发出警告 (@acdlitein#17099) 弃用unstable_createPortal(@trueadmin#17880) 修复 onMouseEnter 在禁用按钮上被触发的问题(@AlfredoGJin#17675) 在 StrictMode 中进行开发时,应两次调用 shouldComponentUpdate (@bvaughnin#17942) 将版本属性添加到 R​​eactDOM (@ealushin#15780) 不要调用dangerouslySetInnerHTML的toString() (@sebmarkbagein#17773) 在更多警告中显示组件堆栈 (@gaearonin#17922,#17586) 更多内容见更新说明: https://github.com/facebook/react/releases/tag/v16.13.0

优秀的个人博客,低调大师

React 16.10.0 发布,构建用户界面的 JavaScript 库

React 16.10.0 发布了,更新内容如下: React DOM 修复了未记录挂钩更新的边缘情况 (@sebmarkbagein#16359) 修复 heuristic (@sebmarkbagein#16739) 卸载期间清除其他光纤字段以节省内存 (@trueadmin#16807) 修复 Firefox 中必填文本字段的错误 (@halvvesin#16578) 如果可用,选择 Object.is 而不是内联 polyfill (@ku8arin#16212) 修复混合挂起和错误处理时的错误 (@acdlitein#16801) Scheduler(实验性) 通过将内部数据结构切换为最小二进制堆来提高队列性能(@acdlitein#16245) 使用间隔较短的 postMessage 循环,而不是尝试使用 requestAnimationFrame 对齐框架边界(@acdlitein#16214) useSubscription 当发生突变并且先前的更新仍在进行时,避免 tearing issue (@bvaughnin#16623) 更新说明及下载地址 React 16.10.1 修复了一个 bug: React DOM 修复 Next.js 应用程序中的回归 (@sebmarkbagein#16943) 更新说明及下载地址

优秀的个人博客,低调大师

RocketMQ 命令行界面管理工具

RocketMQ 提供一个命令行接口管理工具,查询、管理和诊断各种问题。 管理工具是非常友好的。切换路径到${PACKAGE}/bin,输入命令 bash mqadmin。 命令 描述 updateTopic 更新或创建主题 deleteTopic 从broker和NameServer删除主题 updateSubGroup 更新或创建订阅组 deleteSubGroup 从broker删除订阅组 updateBrokerConfig 更新broker的配置 updateTopicPerm 更新主题权限 topicRoute 检查主题路由信息 topicStatus 检查主题状态信息 topicClusterList 获取主题集群信息 brokerStatus broker运行状态数据 queryMsgById 通过id查询消息 queryMsgByKey 通过key查询消息 queryMsgByUniqueKey 通过唯一key查询消息 queryMsgByOffset 通过偏移量查询消息 printMsg 打印消息详情 sendMsgStatus 发送消息到broker的状态 brokerConsumeStats 获取broker消息数据状态 producerConnection 查询生产者的socket连接,客户端版本 consumerConnection 查询消费者的socket连接,客户端版本和订阅 consumerProgress 查询消费者的进度,速度 consumerStatus 查询消费者的内部数据结构 cloneGroupOffset 从其他组克隆偏移量 clusterList 集群列表 topicList 从name server获取主题列表 updateKvConfig 创建或更新KV配置 deleteKvConfig 删除KV 配置. wipeWritePerm 擦除所有name server中的broker写权限 resetOffsetByTime 通过(无客户端重启)重置消费者偏移量 updateOrderConf 创建或更新或删除顺序配置 cleanExpiredCQ 清理broker上过期的消费队列 cleanUnusedTopic 清理broker上未被使用的主题 startMonitoring 启动监控 statsAll 主题和消费者tps 状态 syncDocs 同步文档 allocateMQ 分配MQ checkMsgSendRT 检查消息的发送响应时间 clusterRT 集群内所有消息的发送响应时间列表 帮助文本列出可能的选项和每个选项的解释。 usage: mqadmin clusterList [-h] [-i <arg>] [-m] [-n <arg>] -h,--help Print help -i,--interval <arg> specify intervals numbers, it is in seconds -m,--moreStats Print more stats -n,--namesrvAddr <arg> Name server address list, eg: 192.168.0.1:9876;192.168.0.2:9876

优秀的个人博客,低调大师

android用户界面-组件Widget-网络视图WebView

一个WebView的简单例子 。 在开发过程中应该注意几点: 1.AndroidManifest.xml中必须使用许可"android.permission.INTERNET",否则会出Web page not available错误。 2.如果访问的页面中有Javascript,则webview必须设置支持Javascript。 webview.getSettings().setJavaScriptEnabled(true); 3.如果页面中链接,如果希望点击链接继续在当前browser中响应,而不是新开Android的系统browser中响应该链接,必须覆盖 webview的WebViewClient对象。 mWebView.setWebViewClient(new WebViewClient(){ public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } }); mWebView.setWebViewClient(new WebViewClient(){ public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } }); 4.如果不做任何处理,浏览网页,点击系统“Back”键,整个Browser会调用finish()而结束自身,如果希望浏览的网 页回退而不是推出浏览器,需要在当前Activity中处理并消费掉该Back事件。 public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) { mWebView.goBack(); return true; } return super.onKeyDown(keyCode, event); } public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) { mWebView.goBack(); return true; } return super.onKeyDown(keyCode, event); } 下一步让我们来了解一下android中webview是如何支持javascripte自定义对象的,在w3c标准中js有 window,history,document等标准对象,同样我们可以在开发浏览器时自己定义我们的对象调用手机系统功能来处理,这样使用js就可以 为所欲为了。 看一个实例: view plaincopy to clipboardprint? public class WebViewDemo extends Activity { private WebView mWebView; private Handler mHandler = new Handler(); public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.webviewdemo); mWebView = (WebView) findViewById(R.id.webview); WebSettings webSettings = mWebView.getSettings(); webSettings.setJavaScriptEnabled(true); mWebView.addJavascriptInterface(new Object() { public void clickOnAndroid() { mHandler.post(new Runnable() { public void run() { mWebView.loadUrl("javascript:wave()"); } }); } }, "demo"); mWebView.loadUrl("file:///android_asset/demo.html"); } } public class WebViewDemo extends Activity { private WebView mWebView; private Handler mHandler = new Handler(); public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.webviewdemo); mWebView = (WebView) findViewById(R.id.webview); WebSettings webSettings = mWebView.getSettings(); webSettings.setJavaScriptEnabled(true); mWebView.addJavascriptInterface(new Object() { public void clickOnAndroid() { mHandler.post(new Runnable() { public void run() { mWebView.loadUrl("javascript:wave()"); } }); } }, "demo"); mWebView.loadUrl("file:///android_asset/demo.html"); } } 我们看addJavascriptInterface(Object obj,String interfaceName)这个方法,该方法将一个java对象绑定到一个javascript对象中,javascript对象名就是 interfaceName(demo),作用域是Global。这样初始化webview后,在webview加载的页面中就可以直接通过 javascript:window.demo访问到绑定的java对象了。来看看在html中是怎样调用的。 <html> <mce:script language="javascript"><!-- function wave() { document.getElementById("droid").src="android_waving.png"; } // --></mce:script> <body> <a onClick="window.demo.clickOnAndroid()"> <img id="droid" src="android_normal.png" mce_src="android_normal.png"/><br> Click me! </a> </body> </html> <html> <mce:script language="javascript"><!-- function wave() { document.getElementById("droid").src="android_waving.png"; } // --></mce:script> <body> <a onClick="window.demo.clickOnAndroid()"> <img id="droid" src="android_normal.png" mce_src="android_normal.png"/><br> Click me! </a> </body> </html> 这样在javascript中就可以调用java对象的clickOnAndroid()方法了,同样我们可以在此对象中定义很多方法(比 如发短信,调用联系人列表等手机系统功能。),这里wave()方法是java中调用javascript的例子。 这里还有几个知识点: 1)为了让WebView从apk文件中加载assets,Android SDK提供了一个schema,前缀为"file:///android_asset/"。WebView遇到这样的schema,就去当前包中的 assets目录中找内容。如上面的"file:///android_asset/demo.html" 2)addJavascriptInterface方法中要绑定的Java对象及方法要运行另外的线程中,不能运行在构造他的线程中,这也是使用 Handler的目的。 总结: 1、添加权限:AndroidManifest.xml中必须使用许可"android.permission.INTERNET",否则会出Web page not available错误。2、在要Activity中生成一个WebView组件:WebView webView = new WebView(this);3、设置WebView基本信息:如果访问的页面中有Javascript,则webview必须设置支持Javascript。webview.getSettings().setJavaScriptEnabled(true);触摸焦点起作用requestFocus();取消滚动条this.setScrollBarStyle(SCROLLBARS_OUTSIDE_OVERLAY);4、设置WevView要显示的网页:互联网用:webView.loadUrl("http://www.google.com");本地文件用:webView.loadUrl("file:///android_asset/XX.html"); 本地文件存放在:assets文件中5、如果希望点击链接由自己处理,而不是新开Android的系统browser中响应该链接。给WebView添加一个事件监听对象(WebViewClient)并重写其中的一些方法shouldOverrideUrlLoading:对网页中超链接按钮的响应。当按下某个连接时WebViewClient会调用这个方法,并传递参数:按下的urlonLoadResourceonPageStartonPageFinishonReceiveErroronReceivedHttpAuthRequest6、如果用webview点链接看了很多页以后,如果不做任何处理,点击系统“Back”键,整个浏览器会调用finish()而结束自身,如果希望浏览的网页回退而不是退出浏览器,需要在当前Activity中处理并消费掉该Back事件。覆盖Activity类的onKeyDown(int keyCoder,KeyEvent event)方法。 public boolean onKeyDown(int keyCoder,KeyEvent event){ if(webView.canGoBack() && keyCoder == KeyEvent.KEYCODE_BACK){ webview.goBack(); //goBack()表示返回webView的上一页面 return true; } return false; } 本文转自linzheng 51CTO博客,原文链接:http://blog.51cto.com/linzheng/1080680

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册