版本 2.5.13
链接到源代码 https://jsfiddle.net/esrgxLfu/
描述 我有一个PHP应用程序,主要用于设置页面使用Vue JS.所有设置都是使用Vue创建的,我们使用Webpack.一切正常,当我们处于实时版本时,没有关于Vue处于开发模式的控制台错误.我们仅将Vue用于仪表板页面上的一个组件.它是Vue TODO列表,就像Vue文档中的列表一样.在仪表板页面上,我们获得Vue处于开发模式的控制台消息.我们使用相同的Webpack进行仪表板和设置页面,因此设置相同.我已经找了几个小时试图找到答案,但我没有成功,这就是为什么我要创建这个问题.
在php文件中,我们将vue组件放在:
<div id="vue-tasks"></div>
然后我们包括javascript文件加上变量.
你可以看到在小提琴中使用的所有东西,但我真的不认为我可以使这个可重复,我很抱歉,如果你不能帮我这个,但它是使用PHP Symfony和twig的一堆东西,所以我是不知道我能做什么.
有什么期待? Vue要处于生产模式.
究竟发生了什么? Vue在开发环境中.
Webpack配置
const path = require('path');
const webpack = require('webpack');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
const ManifestPlugin = require('webpack-manifest-plugin');
const ChunkManifestPlugin = require('chunk-manifest-webpack-plugin');
const WebpackMd5Hash = require('webpack-md5-hash');
const CleanWebpackPlugin = require('clean-webpack-plugin');
module.exports = {
entry: {
dashboard: [
'./assets/js/pages/dashboard.js' // Dashboard is the part where we have this issue and the JS is in the fiddle I provided above.
],
settings: [
'./assets/js/pages/settings/main.js'
] …Run Code Online (Sandbox Code Playgroud) 我已经尝试过使用关于filter()与include()结合使用来获得部分匹配的答案
但这并不能真正解决我的问题,因为只有文本小于数组中的值时,此答案才有效。
我现在正在使用此代码,在我提供的示例中可以正常工作并找到“ alex”:
let search = (list, text) =>
list.filter(i => i.toLowerCase().includes(text.toLowerCase()));
var items = ['john', 'bob', 'alex'];
var result = search(items, 'al');
console.log(result);Run Code Online (Sandbox Code Playgroud)
但是,如果我运行result = search(items, 'alexander')它不起作用,则对于我的用例,我还需要能够以这种方式查找项目。
为了说明为什么我需要这样做,我让用户拥有一系列权限角色,例如['admin.all', 'calendar.self', 'calendar.other'],我的菜单项也有一个参数,例如calendar指定它们也属于(部分属于)范围,我使用这两个来确定用户是否应该看到菜单项。
我希望能够运行result = search(menuRoles, 'calendar.self')并重新获得角色calendar,这意味着我可以展示它。