小编And*_*ers的帖子

材质UI改变输入浮动标签的颜色

我想更改Material-UI文本字段的浮动标题的颜色.

如文档中所述,我将对象颜色传递为floatingLabelStyle:

<TextField floatingLabelStyle={{color: somecolor }} />
Run Code Online (Sandbox Code Playgroud)

但是这适用于标签的两种状态 - 当它应该是灰色时,在输出和输入时悬停在焦点之外.

我想我正在覆盖某种CSS转换,但不知道如何让它工作.有什么建议?

javascript css reactjs material-ui

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

Node JS需要抛出AssertionError:缺少路径

我有一个用node.js编写的简单应用程序:

var mongo   = require('./helpers/mongo_utils.js');
var express = require('express');
var user = require('./models/users.js');

mongo.connect(function (err)
{
  if (err) throw err;
  console.log('connected');

  var app = express();
  app.listen(3000, function ()
    {
      console.log('Server set up and start listening on port 3000');
    })
})
Run Code Online (Sandbox Code Playgroud)

所有工作除了我需要users.js文件.如果我不需要它我没有问题,但是当我这样做时,我得到这个错误:

assert.js:89
  throw new assert.AssertionError({
  ^
AssertionError: missing path
    at Module.require (module.js:363:3)
    at require (module.js:384:17)
    at Object.<anonymous> (/home/jimzer--jimzer/www/NodeJsForum/models/users.js:1:79)
    at Module._compile (module.js:434:26)
    at Object.Module._extensions..js (module.js:452:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.<anonymous> (/home/jimzer--jimzer/www/NodeJsForum/app.js:3:12)
Run Code Online (Sandbox Code Playgroud)

这是users.js的代码,如果它可以帮助: …

javascript require mongodb node.js express

7
推荐指数
2
解决办法
3万
查看次数

Python:如何在 Selenium 中隐藏输出 Chrome 消息?

我想做的事:

我想使用 Selenium ChromeDriver 打开 Chrome 浏览器,而不将 Chrome 消息输出到控制台。

我做了什么:

from selenium import webdriver
driver = webdriver.Chrome(r'C:\Users\u1\Documents\scripts\chromedriver.exe')
Run Code Online (Sandbox Code Playgroud)

输出:

from selenium import webdriver
driver = webdriver.Chrome(r'C:\Users\u1\Documents\scripts\chromedriver.exe')
Run Code Online (Sandbox Code Playgroud)

我想隐藏输出消息“DevTools Listening on...”

我试图解决这个问题:

使用上下文库

from selenium import webdriver
import contextlib

with contextlib.redirect_stdout(None):
   driver = webdriver.Chrome(r'C:\Users\u1\Documents\scripts\chromedriver.exe')
Run Code Online (Sandbox Code Playgroud)

使用 devnull

from selenium import webdriver
import subprocess

devnull = subprocess.DEVNULL
subprocess.Popen(open_browser(), stdout=devnull, stderr=devnull)
def open_browser():
    driver = webdriver.Chrome(r'C:\Users\u1\Documents\scripts\chromedriver.exe')
Run Code Online (Sandbox Code Playgroud)

使用日志级别=3

chrome_options = Options()
chrome_options.add_argument("--log-level=3")
driver = webdriver.Chrome(r'C:\Users\u1\Documents\scripts\chromedriver.exe', chrome_options=chrome_options)
Run Code Online (Sandbox Code Playgroud)

但该消息仍然显示。如何在 Python 中隐藏输出消息“DevTools Listening on...”?

python selenium python-3.x selenium-chromedriver selenium-webdriver

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

防止直接访问mp3/wav文件,同时允许Flash播放器使用.htaccess(或PHP)访问它们

如何阻止直接访问/下载到mp3/wav文件,同时允许Flash播放器使用.htaccess(或PHP)访问它们?我一直在寻找一种解决方案,只有部分和无效的解决方案才能显示出我的努力.

下面的解决方案似乎是一个很好的解决方案,但它也阻止我的Flash播放器访问文件.我可以只允许从特定页面访问吗?:

< Files ~ ".*\..*"><br />
order allow,deny<br />
deny from all<br />
< /Files>
Run Code Online (Sandbox Code Playgroud)

下面的解决方案起初看起来很棒,因为它不允许人们查看目录中的文件,但如果用户知道音乐文件的确切URL,他们可以下载它:

SetHandler application/x-httpd-php<br />
SetHandler application/x-shockwave-flash
Run Code Online (Sandbox Code Playgroud)

现在,我遇到了这篇文章,强迫用户使用htaccess生成用户名和密码,但在Flash播放器屏幕上会弹出对话框.有没有办法让页面发送登录信息而无需用户做任何事情?


如果这不是一种安全的方法,有人可以建议一种安全且相对直接的方法来实现这种限制功能吗?网址和示例将不胜感激

PS这是一个WordPress站点,因此,我将使用PHP作为编程语言来实现任何解决方案.

PS希望阻止新手下载,而不是黑客/破解者/互联网向导.

php apache security flash .htaccess

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

如何在Vue.js中按顺序保持可排序的数组和组件

我正在使用Vue.js和Dragula来制作拖放平铺页面.每个磁贴都包含自己的数据集,因此每个磁贴都是Vue组件.

问题是,一旦我拖放其中一个磁贴,Vue实例中的DOM元素和数据数组就会失去同步并开始引发问题.只是拖放不会产生问题,但是一旦我拖放某些内容然后尝试删除它,一切都会出错.

这是一个小提琴:https://jsfiddle.net/wfjawvnL/13/

这是我的HTML,包含组件模板:

<body>
  <div id="app">
    <div id="draggable" class="wrapper">
      <template v-for="(index, item) in list">
        <block :id="index" :index="index" :item="item" :name="item.name">
        </block>
      </template>
    </div>
    <div class="footer">
      <pre>{{ $data | json }}</pre>
    </div>
  </div>
</body>

<template id="block-template">
  <div :id="index" :class="[name, 'block']">
    <div class="text name">{{ name }}</div>
    <div>Index: {{ index }}</div>
    <span class="delete" v-on:click="removeItem(item)">&#x2717;</span>
  </div>
</template> 
Run Code Online (Sandbox Code Playgroud)

这是我的Vue实例:

var vm = new Vue({
    el: '#app',

        data: {
        list: [
        {name: 'item1'},
        {name: 'item2'},
        {name: 'item3'},
        {name: 'item4'},
        {name: 'item5'}
      ]
    }, …
Run Code Online (Sandbox Code Playgroud)

javascript drag-and-drop vue.js

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

Javascript - 在[contenteditable]的子元素中获取插入符号后面的元素

我正在使用Javascript构建一个简单易用的文本编辑器,基本上是一个WYSIWYG编辑器.我将使用contenteditable属性到主包装器(.wrapper).当您在其中按Enter键时,具有唯一.wrapper的新<p>元素id将附加到包装器.

我需要一种方法来获取.wrapper当前所选择的子元素(即,被聚焦或在其中具有插入符号/文本标记).

我搜索了几天没有任何结果,我尝试过使用document.elementFromPoint()但没有任何正确的结果.

使用时$(":focus"),我得到整个.wrapper而不是特定的子元素.

编辑:

示例HTML结构:

<div class="container t-wrapper" contenteditable>
</div>
Run Code Online (Sandbox Code Playgroud)

示例Javascript代码:

$(document).ready(function() {
    $currentElement = $("[contenteditable]");

    $(".t-wrapper").each(function() {
        var id = generateIdentifier(6); // Ignore this

        /* This creates the initial <p> child element, where you start typing. */
        $(this).html('<p class="t-empty t-first" id="' + id + '"></p>');

        $(this).on("mouseup", function() {
            /* $currentElement = whatever element the caret is inside. */
        });

        $(this).on("keyup", …
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery contenteditable

5
推荐指数
1
解决办法
567
查看次数

使用Webpack和less-loader将全局var传递到LESS文件时出错

我在我的项目中使用webpack和less-loader,在我的webpack配置中,我试图传递一个全局变量以在我的less文件中使用。该部分配置如下:

module: {
    loaders: [
        {
            test: /\.less$/,
            loader: 'style!css!less?'+JSON.stringify(
                {globalVars: {staticDir: config.staticDir}}
            )
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

我上面引用的配置文件是下面的json文件:

{
    "staticDir": "'https://myendpoint.com'"
}
Run Code Online (Sandbox Code Playgroud)

以下是使用此staticDir全局变量的less文件的一部分(我们称其为file.less):

button.slick-prev {
    left: 5px;

    &:before {
        url('@{staticDir}/images/some_image.svg');
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,当我的资产捆绑在一起时,会出现以下错误:

ERROR in ./~/css-loader!./~/less-loader?{"globalVars":{"staticDir":"'https:/myendpoint.com'"}}!./path/to/file.less
Module not found: Error: Cannot resolve 'file' or 'directory' ./https:/myendpoint.com/images/some_image.svg in /Users/me/myprojects
 @ ./~/css-loader!./~/less-loader?{"globalVars":{"staticDir":"'https:/myendpoint.com'"}}!./path/to/file.less 7:217947-218035
Run Code Online (Sandbox Code Playgroud)

我正在尝试调试的两个错误:

  • 根据错误我的配置值https://myendpoint.com被解析为https:/myendpoint.com
  • less-loader正在将我的端点解析为相对目录

当我将端点硬编码到less文件中时,webpack会很好地打包我的资产。

最后一点:我staticDir在配置中设置为,"'https://myendpoint.com'"因为与绑定会"https://myendpoint.com"产生Module build failed: Unrecognised input错误。

javascript webpack css-loader

5
推荐指数
0
解决办法
587
查看次数

在python中将图像嵌入电子邮件的正文中

我在.png文件中有一个图像.我试图使用Python将此图像嵌入到电子邮件的正文中.我尝试了互联网上提供的各种选项,但他们提供了附加文件的解决方案,而不是嵌入电子邮件正文中.

这是我的代码片段.我正在附加一个文件,并尝试在电子邮件正文中添加图像(实际上是附加html文件,而不是将图像添加到电子邮件正文).在Python中是否可以在电子邮件正文中嵌入图像?

def send_report(send_from, send_to, subject, text, files=[], server="10.70.70.100",html=True):
#assert isinstance(send_to, list)
#assert isinstance(files, list)

msg = MIMEMultipart()
msg['From'] = send_from
msg['To'] = send_to
msg['Date'] = formatdate(localtime=True)
msg['Subject'] = subject

if (html):
    part1 = MIMEText(text, 'html')
    msg.attach(part1)
else:
    msg.attach( MIMEText(text) )

for f in files:
    part = MIMEBase('application', "octet-stream")
    part.set_payload( open(f,"rb").read() )
    Encoders.encode_base64(part)
    part.add_header('Content-Disposition', 'attachment; filename="%s"' % os.path.basename(f))
    msg.attach(part)

#Trying to embed image in email body
img_data = open('a.png', 'rb').read()
html_part = MIMEMultipart(_subtype='related')
body = MIMEText('<p>Hello <img src="cid:myimage" /></p>', _subtype='html') …
Run Code Online (Sandbox Code Playgroud)

python embed email html-email smtplib

5
推荐指数
0
解决办法
4663
查看次数

用于生成下拉菜单/删除下拉菜单的JavaScript函数

我试图<select>在按钮单击上添加和删​​除下拉列表到表单.这是我目前的代码.我可以发誓我昨晚有这个工作,但是当我今天早上在我的项目上工作时,下拉菜单不会正确添加/删除.

function DropDowns(){
    this.counter = 0;
    this.addDropdown = function (divname) {
        var newDiv = document.createElement('div');
        var html = '<select name="cookie' + this.counter + '">', i;

        for (i = 0; i < cookies_drop.length; i++) {
           html += "<option value='" + cookies_drop[i] + "'>" + cookies_drop[i] + "</option>"
        }
        html += '</select>';
        newDiv.innerHTML = html;
        document.getElementById(divname).appendChild(newDiv);

        this.counter++;
    }

    this.remDropdown = function() {
        $('#dropdowns-container').find('div:last').remove();
        this.counter--;
    }
}

var dropsTest = new DropDowns();
Run Code Online (Sandbox Code Playgroud)

HTML:

<form action='' method=post id="dropdowns-container">

    <button id="add_cookie" type="button" onclick="dropsTest.addDropdown('dropdowns-container');">add …
Run Code Online (Sandbox Code Playgroud)

html javascript

5
推荐指数
1
解决办法
210
查看次数

Google Cloud Vision API'请求拒绝被拒绝'

我是Google Cloud Vision API的新手.我正在对图像进行OCR,主要用于账单和收据.

对于一些图像,它工作正常,但当我尝试其他一些图像时,它给了我这个错误:

Error:  { [Error: Request Admission Denied.]
  code: 400,
  errors:
   [ { message: 'Request Admission Denied.',
       domain: 'global',
       reason: 'badRequest' } ] }
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

// construct parameters
const req = new vision.Request({
image: new vision.Image('./uploads/reciept.png'),
features: [
new vision.Feature('TEXT_DETECTION', 1)
]
})

vision.annotate(req).then((res) => {
// handling response
//console.log(res.responses[0].textAnnotations);
var desc=res.responses[0].textAnnotations;
var descarr=[];
for (i = 0; i < desc.length; i++) { 
descarr.push(desc[i].description);
}
Run Code Online (Sandbox Code Playgroud)

ocr gcloud google-vision google-cloud-vision

5
推荐指数
1
解决办法
1473
查看次数