小编Mar*_*mes的帖子

MySQL左边连接多行,如何在左边的每一行中合并为一行(我希望从右表中的字段合并)?

我有两个MySQL表,产品和条形码.一个产品可能有多个条形码,这就是为什么我把它分成它自己的表.

这是我尝试过的(使用CodeIgnighter的Active Record,但我在这里写出了查询,这意味着如果有拼写错误,它可能不在我的实际查询中):

SELECT
    products.id,
    products.snipe_price,
    group_concat(barcodes.barcode) as barcodes
FROM products
LEFT JOIN barcodes on barcodes.product_id = products.id
Run Code Online (Sandbox Code Playgroud)

但是这只返回一行,其中包含每个产品concat编辑的所有条形码,如何使用产品条形码为每个产品获得一行?

我宁愿不必拆分它,但如果没有解决方案join那么请告诉我.

php mysql

18
推荐指数
1
解决办法
2万
查看次数

使用Webpack和Babel的ES6动态导入

我一直在使用Webpack作为我的ES6 JS项目,并且在我开始使用动态导入之前一直很顺利.

我有什么工作(router.js):

import { navigo } from "Navigo"; // router
import { clients } from "Controllers/clients.js";

const navigo = new Navigo();

navigo_router.on({
  '/clients': () => {
    clients.init();
  }
});
Run Code Online (Sandbox Code Playgroud)

但是我添加的页面/路线越多,进口就越多地堆积在模块的头部.这是一个相对较大的应用程序,我有很多页面/路由要添加,因此我需要动态加载它们,以减少初始页面加载的大小.

因此,按照Webpack的动态导入文档,我尝试了以下内容,只有在调用相对路径时才加载控制器模块:

import { navigo } from "Navigo"; // router

const navigo = new Navigo();

navigo_router.on({
  '/clients': () => {
    import("Controllers/clients.js").then((clients) => {
      clients.init();
    });
  }
});
Run Code Online (Sandbox Code Playgroud)

但是在我的编辑器中保存它会导致Babel发生错误; SyntaxError:'import'和'export'可能只出现在顶层,并且clients.init()在浏览器中测试时不会被调用.

经过一番阅读后,我发现我需要一个Babel插件来动态import()转换require.ensure.所以,我使用以下命令安装了插件:

npm install babel-plugin-dynamic-import-webpack --save-dev
Run Code Online (Sandbox Code Playgroud)

并在我的 …

javascript ecmascript-6 webpack babeljs es6-modules

7
推荐指数
1
解决办法
4448
查看次数

当元素进入视口时,在离开视口之前水平滚动其整个内容

我有一个水平滚动元素,包含位于页面下方的图像.

首先,我有以下标记和样式.我用过,overflow:hidden因为我不想要滚动条.为简单起见,我还删除了一些不太重要的样式:

<ul id="players-horizontal">
    <li class="player-box"><img src="..."></li>
    <li class="player-box"><img src="..."></li>
    ...
</ul>

#players-horizontal {
    overflow: hidden;
    height: 340px;
    width: 100%;
}

#players-horizontal .player-box {
    display: inline-block;
    width: 300px;
    height: 340px;
}

#players-horizontal .player-box:first-child {
    margin-left: 90%;
}
Run Code Online (Sandbox Code Playgroud)

这给了我以下观点:

在此输入图像描述

当这个元素滚动到视图中时,我想水平滚动它的整个内容,直到它即将离开视图,这样用户可以在向下滚动的同时看到它的全部内容.

元素即将离开视口时所需的外观如下:

在此输入图像描述

反之亦然,当用户向上滚动时,应该发生相反的操作.

要知道元素何时进入视口,我使用了Waypoints插件:

var waypoints = $('#players-horizontal').waypoint(
    function(direction) {
        if (direction === 'down') {
            //console.log("Into view");
            $window.scroll(function () {
                var s = $(this).scrollTop();

            });
        } else {
            //console.log("Out of view");
            $window.scroll(function () {
                var s = $(this).scrollTop(); …
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery

7
推荐指数
1
解决办法
253
查看次数

vue.js-动态导入导致错误:目前未启用对实验语法'dynamicImport'的支持

我今天是第一次使用Webpack 学习Vue.js,并试图使路由器能够处理惰性/动态导入。

我要使用惰性导入/动态导入,因为我正在重建内容管理系统,该系统具有在用户会话期间可能使用或可能不使用的许多页面,因此在需要时动态加载他们需要的模块更有意义关于我的申请。

我最基本的路由器当前如下所示:

import Vue from "vue";
import Router from "vue-router";

Vue.use(Router);

function loadView(view) {
    return () => import(/* webpackChunkName: "view-[request]" */ `@/views/${view}.vue`);
}

export default new Router({
    routes: [
        {
            path: "/",
            name: "dashboard",
            component: loadView("Dashboard")
        },
        {
            path: "/login",
            name: "login",
            component: loadView("Login")
        }
    ]
});
Run Code Online (Sandbox Code Playgroud)

但是,我遇到以下编译错误:

./src/router/index.js中的错误模块构建失败(来自./node_modules/babel-loader/lib/index.js):语法错误:..... / src / router / index.js:支持实验语法'dynamicImport'当前未启用

附加说明:

将@ babel / plugin-syntax-dynamic-import添加到Babel配置的“插件”部分以启用解析。

并告诉我哪条线是问题,无论如何这很明显:

return () => import(/*..........
             ^
Run Code Online (Sandbox Code Playgroud)

我从几个月前独自使用Webpack时就意识到了这个错误,所以我知道我必须安装动态导入插件才能使此工作正常。

这是我安装的:

npm install babel-plugin-syntax-dynamic-import
Run Code Online (Sandbox Code Playgroud)

我在babel.rc配置文件中提供了该插件,然后npm run …

babel dynamic-import webpack vue.js vue-router

6
推荐指数
1
解决办法
5251
查看次数

获取带有图片的点击链接的 href

使用jQuery,我只是试图让hrefa,当鼠标点击图像或周边地区。

HTML模板:

<nav id="main_nav">
  <ul>
    <li>
      <a href="/" data-path>
        <img class="dashboard_icon" src="img/icons/nav/dashboard.svg">
      </a>
    </li>
  </ul>
  ... more nav options
</nav>
Run Code Online (Sandbox Code Playgroud)

款式:

li { list-style: none; display: block; width: 80px; height: 80px; }
a { display: block; width: 100%; height: 100%; }
img { width: 30px; height: 30px; margin: 25px; }
Run Code Online (Sandbox Code Playgroud)

jQuery:

$(document).on('click', '[data-path]', (e) => {
  e.preventDefault();
  let target = $(e.target).attr('href');
  router.navigate(target);
});
Run Code Online (Sandbox Code Playgroud)

但问题是,每当我点击里面的图片a,我不明白的href,因为它试图获取href从图像值我点击,而不是a。但是,如果我单击图像周围的区域,则会得到href所需的结果。

尝试:

我变了: …

html javascript jquery

4
推荐指数
1
解决办法
2044
查看次数