我正在使用 ionic3 开发一个应用程序,但是在 android 上使用它时,我无法选择<ion-input>
、<input>
或标签内<ion-textarea>
的文本。
在浏览器中测试时,效果很好。然而,当我在 android 中使用它时,点击输入(长或短)只会切换键盘,并且不可能选择文本。<textarea>
经过广泛的研究,我意识到,如果我的<ion-input>
或<ion-textarea>
在其中<ion-item>
,它就可以正常工作,并且可以选择和复制文本。由于许多设计原因,我不想将输入放入<ion-item>
元素中,因为它会在应用程序中产生许多其他问题。
我认为该<ion-item>
元素必须修改子元素的行为,例如允许复制默认情况下其他元素不允许的文本。所以我想知道是否可以重现这种行为,而不必将输入包装在<ion-item>
元素中。
我尝试在我的 scss 文件中使用它,但没有成功:
ion-input input, ion-textarea textarea, input, textarea {
-webkit-user-select: auto;
// I also tried -webkit-user-select: text;
}
Run Code Online (Sandbox Code Playgroud)
如果我确实喜欢这样:
ion-input, ion-textarea {
-webkit-user-select: auto;
// I also tried -webkit-user-select: text;
}
Run Code Online (Sandbox Code Playgroud)
我可以选择文本,但不能在输入时选择,我正在选择输入本身。
我想要的只是能够在输入、复制、粘贴时进行选择......
任何想法将不胜感激:)
有人愿意提供有关如何编写 couchdb 设计文档的完整文档示例吗?
我从来没有能够找到合适的文档。我能够找到可用方法的列表,但无法找到如何在设计文档中编写它们。例如,本页的couchdb 文档说明了如何使用 map 函数,但并未说明该函数在设计文档中是通过以下方式实现的:
{
"views": {
"someView": {
"map": "function(doc){ emit(doc.name, doc) }"
}
}
}
Run Code Online (Sandbox Code Playgroud)
这个页面上的信息非常少,但对我来说似乎很不完整。例如,它甚至没有提到结构中可以有“validate_doc_update”。
我认为一个好的文档示例实际上在 couchdb 文档本身中非常有用。
它可能如下所示:
{
"_id": "_design/exampleDesignDocument",
"_rev": "1-11111111111111111111111111",
"views": {
"someView": {
"map": "function(doc){ emit(doc.name, doc) }",
...
}
},
"lists": {
"someList": "function(head, req){ send('<html>hello</html>') }"
}
...
}
Run Code Online (Sandbox Code Playgroud)
这个例子将显示所有设计文档方法的用法,包括(但不限于如果我忘记了一些):view (map, reduce functions...), show, list, update, filter, validate。
我希望我没有错过什么地方,但我无法理解我正在做的事情到底发生了什么。
我正在编写一个 web 应用程序,在我的应用程序中,我以编程方式打开一个新页面来搜索duckduckgo 中的内容。我正在使用以下代码window.open("https://duckduckgo.com/?q=something")
,这对我有好处。
这一切正常,但我注意到当执行此代码时,在我的控制台中,记录了以下内容:
自动授予跟踪器“ https://duckduckgo.com ”在“ http://localhost:8000 ”上的存储访问权限。
我想知道这是什么意思。
我知道这可能与duckduckgo 本身无关,也许只是因为它们足够好,可以实际记录某些内容并保持透明。
使用时与外部网站确切共享哪些信息window.open
?“授予对跟踪器的访问权限”是什么意思?我的控制台中的这个日志来自哪里?外部站点实际上可以在我当前的页面中执行一些 javascript 代码吗?这对我来说似乎很奇怪,而且对隐私来说听起来是灾难性的。
假设我有一个如下对象:
let obj = {
method1: () => { return "method1 called" },
method2: () => { return "method2 called" },
method3: () => { return "method3 called" },
}
Run Code Online (Sandbox Code Playgroud)
我想声明一个变量,该值只能是中存在的键之一obj
。
手动地,我可以这样做:
let myVar : "method1" | "method2" | "method3";
Run Code Online (Sandbox Code Playgroud)
但是,有什么方法可以动态声明呢?这样,我添加的任何方法obj
都将被视为的有效值myVar
。
我正在开发一个依赖jQuery和jqueryUI的节点库。我使用browserify使它可被浏览器页面访问。
因此,在我的库代码中,例如可以有这样的代码:
var createMenu = function (target, options) {
$target = $(target);
$target.menu(options);
}
Run Code Online (Sandbox Code Playgroud)
我需要这样的jQuery和jQueryUI:
var $ = jQuery = require("./node_modules/jquery");
require("./node_modules/jquery-ui-dist");
Run Code Online (Sandbox Code Playgroud)
但是当我createMenu
在浏览器中调用function时,它会记录TypeError: $target.menu is not a function
。
JQueryUI似乎没有正确加载,但是我没有找到有关如何正确加载的文档。
我也尝试$.ui = require('./node_modules/jquery-ui/ui/widget.js')
了一点运气。
如果我执行以下操作:
jQueryUI = require("./node_modules/jquery-ui")
console.log(jQueryUI)
Run Code Online (Sandbox Code Playgroud)
它仅记录一个空对象。
关于将jQueryUI登录到在nodejs中使用它的正确方法有任何想法吗?
我正在编写一个需要在nodejs和浏览器中运行的库(通过脚本标签导入)。
我想使用 typescript 来编写它,因为它很方便,我也想使用 webpack,因为在某些时候我可能有其他内容或样式与之关联。
到目前为止,我已经成功地使该库可用于节点和浏览器,但不知何故,我不能简单地将其导入到另一个打字稿项目中并使用它是打字稿库的事实。
这就是我的样子tsconfig.json
:
{
"compilerOptions": {
"allowSyntheticDefaultImports": true,
"declaration": true,
"module": "es2015",
"moduleResolution": "node",
"sourceMap": true,
"target": "es6",
"outDir": "ts/",
"strict": true
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的webpack.config.js
:
const path = require('path');
// PLATFORMS
var variants = [
{
target: "web",
filename: "index.browser.js"
},
{
target: "node",
filename: "index.node.js"
},
];
// CONFIG
var configGenerator = function (target, filename) {
return {
entry: './src/index.ts',
module: {
rules: [
{
test: /\.tsx?$/,
use: 'ts-loader',
exclude: /node_modules/ …
Run Code Online (Sandbox Code Playgroud) javascript ×2
node.js ×2
typescript ×2
copy ×1
couchdb ×1
duckduckgo ×1
input ×1
ionic3 ×1
jquery-ui ×1
privacy ×1
tracker ×1
webpack ×1