我正在致力于将 Vue.js 的功能引入 WordPress 生态系统,我的第一个项目是在页面上进行搜索和过滤。
因为主网站最初是由 WordPress 使用 PHP/HTML 渲染的,所以我在页面上初始化了 Vue,附加到我使用 WordPress 输出的 HTML 元素。这一切都工作得很好,但现在我试图通过拥有同一代码库的多个实例(可以一起工作)来更进一步
以 Indeed 为例(假设这是一个 WordPress 网站):

因为整个输出不是在 Vue.js 中完成的,所以我必须从 WordPress 端输出多个 HTML DIV 元素,并在它们上初始化 Vue。
因为表单/字段将根据用户配置/设置动态生成,所以两个实例将使用相同的代码库......但我以某种方式需要使其能够协同工作,也就是说,更新结果在任何情况下,当选择或更改值时,都会在页面上显示。
这里的想法是在我的主 JS 文件中使用 vanilla javascript 来检测页面上存在的所有特定 HTML 元素(甚至可能为数据对象中的每个元素定义一个 slug),然后执行 foreach 循环来初始化new Vue()在每个实例上。
我的第一个想法是使用 Vuex 存储,将单个存储附加到所有实例,存储任何选定的值,并在其中任何一个发生更改时触发调度来更新列表。
以前有人做过类似的事情吗?这样做有什么我应该感到厌倦的吗?或者有人对如何做到这一点有更好的建议?
我认为我最好在这里提问,而不是通过艰难的方式学习,然后发现这可能是不可能的,或者这样做会出现问题。
任何建议、评论、批评或想法都将不胜感激
更新
有一个建议,将 Vue 实例绑定到主体,删除该render函数,然后在需要的地方输出组件 HTML 元素(而不是输出 div 然后附加到它)。想要对此进行测试,但对围绕此的想法感到好奇?
我正在构建一个Cordova应用程序,该应用程序需要访问Android上的WiFi并禁用当前连接的网络,以防止与它连接的网络自动断开连接(因为没有互联网)。
问题是,在Android Oreo 8.0+上进行测试时,我遇到了此错误adb logcat,但无法弄清楚该如何解决:
E/WifiConfigManager: UID 10315 does not have permission to update configuration "Test SSID"WPA_PSK
E/WifiStateMachine: Failed to disable network
Run Code Online (Sandbox Code Playgroud)
这些是清单中列出的权限:
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.OVERRIDE_WIFI_CONFIG" />
<uses-permission android:name="android.permission.INTERNET" />
Run Code Online (Sandbox Code Playgroud)
OVERRIDE_WIFI_CONFIG我在这篇文章中找到的烫发,但是在我的特定情况下似乎无济于事:更改Android热点设置
我发现此文件中存在此特定错误:https : //android.googlesource.com/platform/frameworks/opt/net/wifi/+/master/service/java/com/android/server/wifi/WifiConfigManager.java# 984
canModifyNetwork我在这里找到的呼叫:https :
//android.googlesource.com/platform/frameworks/opt/net/wifi/+/master/service/java/com/android/server/wifi/WifiConfigManager.java#651
具备Android经验的人可以帮助我解决此问题吗?为了允许我的应用禁用网络,需要做什么?
这是否意味着如果应用不是由应用创建的,则不允许应用禁用网络?请帮助我不知道从这里去哪里!
我也确实找到了该帖子,该帖子引用了6.0,但这是否真的使我们基本上完全摆脱了我们未创建的禁用网络的限制?如果该SSID已经存在另一个WifiConfiguration,则Android 6.0无法添加WifiConfiguration
android cordova android-permissions android-8.0-oreo android-8.1-oreo
所以我一直在搜索和测试几天,似乎无法解决这个问题.
我正在使用K2内容模块,我需要将"?Itemid = 111"添加到它为页面上的"Read More"链接生成的URL的末尾.
这不是默认情况下完成的,我已经找到了我可以添加的地方,但是我在从文章ID中获取Itemid(菜单ID)时遇到了问题.
我发现的所有例子都有用
$app = JFactory::getApplication();
$menu = $app->getMenu();
$activeId = $menu->getActive()->id;
Run Code Online (Sandbox Code Playgroud)
这样,无论何时您在该页面上,它都会添加正确的ID.但是对于我在主页上显示的文章,它无法正常工作,因为它添加了主页的Itemid(菜单ID),而不是该特定文章的菜单ID.
在使用Joomla 1.5之前,我会使用内置函数
getItemid($articleid)
Run Code Online (Sandbox Code Playgroud)
这似乎对我不起作用了.
有没有人有任何建议或任何人可以指出我如何解决这个问题以及"从文章ID中获取菜单ID(Itemid)"?
谢谢!!!
所以我试图创建一个别名/脚本,使用wget从网站/目录下载所有特定扩展,但我觉得必须有一个比我想象的更简单的方法.
现在我搜索谷歌和手册页的代码是:
wget -r -l1 -nH --cut-dirs=2 --no-parent -A.tar.gz --no-directories http://download.openvz.org/template/precreated/
Run Code Online (Sandbox Code Playgroud)
所以在上面的例子中,我试图从OpenVZ precreated templates目录下载所有.tar.gz文件.
上面的代码工作正常,但我必须手动指定--cut-dirs = 2,它会删除通常会创建的/ template/precreated /目录结构,并且还会下载robots.txt文件.
现在这不一定是一个问题,只是删除robots.txt文件很容易,但我希望我只是错过了手册页中的一些内容,这些内容可以让我做同样的事情,而无需指定要剪切的目录结构. .
感谢您提前提供任何帮助,非常感谢!
有人知道Google Core IoT上的设备离线时触发事件的简便方法吗?在我切换到Google的IoT实施之前,可以通过在MQTT断开连接时触发一个事件来非常轻松地解决此问题,但是Google似乎没有做到这一点的简便方法。
有人知道为此有什么计划吗?
谁回来了,我需要从头开始,让他们看到这样的事情是物联网设备管理的基本要求!
AWS和Microsoft等其他平台已经实现了此功能(或通过某种方式轻松实现):https : //docs.aws.amazon.com/iot/latest/developerguide/life-cycle-events.html
我希望我在编写所有代码并使用Google的IoT平台实施设置之前就已经知道这一点,我认为这是我的错误,因为我假设如此简单,并且应该是IoT设备的标准配置。
如果您甚至无法提供基本的离线/在线活动,您将如何与其他物联网提供商竞争?
我在这个SO问题中的答复显示了我必须编写100多行代码才能创建firebase函数来检查设备是否在线(但这仍然无法处理离线事件,而只是对某些应有的东西的一种破解)是任何物联网服务提供商的本地用户!):https : //stackoverflow.com/a/54609628/378506
我希望其他人想出了一种方法,因为我花了很多天搜索SO,Google,Google Core IoT文档,但仍然没有找到任何东西。
即使MQTT Last Will得到了支持,我们也可以做到这一点,但是Google也不支持(https://cloud.google.com/iot/docs/requirements)...伙计们!
firebase google-cloud-platform google-cloud-iot google-cloud-firestore
我正在尝试使用以下代码输出当前日期和时间:
$theDate = date('y-m-d H:m:s', time());
echo $theDate;
Run Code Online (Sandbox Code Playgroud)
它工作正常,但时间的输出不会改变分钟,它只是在HH:07:SS的站点,所以分钟位于07,唯一改变的是秒和小时.
这是因为PHP内部的时间函数?它只经常更新分钟吗?为什么不更新会议纪要?
如何才能获得相同的输出,但分钟显示正确?
每当我在服务器上运行strftime时它输出正常,只是试图弄清楚它.