尝试使用 Puppetter 打印 PDF 时出现以下错误。我在网上找不到有关此错误的更多信息。这是否意味着该特定页面不支持 PDF,或者我的代码中是否有可以修改此设置的设置?任何帮助,将不胜感激。
export const create = async (dev: boolean = true) => {
const username = process.env.USERNAME;
const password = process.env.PASSWORD;
const options = dev
? {
headless: false,
slowMo: 25,
}
: {};
const browser = await Puppeteer.launch(options);
const page = await browser.newPage();
await page.goto(LOGIN_URL, {
waitUntil: "networkidle2",
});
await page.type(USERNAME_INPUT_ID, username);
const passwordInputHandle = await page.$(PASSWORD_INPUT_ID);
await passwordInputHandle.type(password);
await passwordInputHandle.press("Enter");
await page.pdf({ path: path.join(TEMP_FOLDER, "hn.pdf"), format: "a4" });
await browser.close();
};
Run Code Online (Sandbox Code Playgroud) 需要帮助测试用户与mocha selenium webdriver的交互.不知道在哪里找到正确的方法来获取文本输入的值.尝试了getAttribute(),getText等各种变体.获取相同的错误:
TypeError: Object [object object] has no method 'getElementText'
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
var assert = require('assert'),
fs = require('fs');
var webdriver = require('../node_modules/selenium-webdriver'),
test = require('../node_modules/selenium-webdriver/testing'),
remote = require('../node_modules/selenium-webdriver/remote');
test.describe('Google Search', function() {
var driver;
this.timeout(60000);
test.before(function() {
driver = new webdriver.Builder().
withCapabilities(webdriver.Capabilities.chrome()).
build();
});
test.it('should append query to title', function() {
//setTimeout(done, 60000);
driver.get('http://localhost:8080/devanagariTextField/index.html');
driver.findElement(webdriver.By.id('textbox')).sendKeys('gaa');
//driver.findElement(webdriver.By.name('btnG')).click();
driver.wait(function() {
return driver.getElementText('value').then(function(text) {
console.log('TEXT: ' + text)
return '??' === text;
});
}, 1000);
});
//test.after(function() { driver.quit(); });
});
Run Code Online (Sandbox Code Playgroud) 我正在使用这个功能:
function playSound(file) {
MyAudio = new Audio(file);
MyAudio.play();
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,我很难找到适用于所有浏览器的文件类型.Mp3适用于Chrome,Safari,IE但不适用于FF和Opera,而.ogg文件似乎只适用于FF.
有什么建议来解决这个问题吗?我认为没有办法以编程方式检测正在使用哪个浏览器,然后播放相应的文件类型?任何建议/想法赞赏.谢谢.
这是我的modal-profile.html
<ion-modal-view>
<form name="itemEdit" novalidate>
<ion-header-bar class="bar-positive fix-buttons">
<div class="row">
<a class="button " ng-click="closeModal()">Cancel</a>
<h1 class="title ">Diary</h1>
</div>
</ion-header-bar>
<ion-content has-bouncing="true">
<div class="row" ng-class="{'no-padding-top': !data.editItem}">
<div class="col">
<label class="item item-input large">
<input type="text" placeholder="Title" ng-model="modelTitle">
</label>
</div>
</div>
<div class="row description-row">
<div class="col">
<label class="item item-input text">
<textarea placeholder="Description" rows="5" ng-model="modelDescription" ng-Required="true" lose-focus-on-return></textarea>
</label>
</div>
</div>
<button class="button" ng-click="addDetail()">ADD</button>
<div class="row charity-row">
<div class="col col-10 vert-center">
<div class="charity large"></div>
</div>
</div>
</ion-content>
</form>
</ion-modal-view>
Run Code Online (Sandbox Code Playgroud)
这是我的控制器
.controller('ChatsCtrl', function($scope,$ionicModal, Chats,$state,$cordovaSQLite) {
$scope.chats …Run Code Online (Sandbox Code Playgroud) 我试图让java在一次点击后执行一个操作,然后在再次按下相同的按钮时执行另一个操作,无论点击之间有多长时间.这可能吗?这是我到目前为止所尝试的:
button.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
if (e.getClickCount()%2 == 1) {
System.out.println("You have clicked once");
}
if(e.getClickCount()%2 == 0){
System.out.println("You have clicked twice");
}
}
});
Run Code Online (Sandbox Code Playgroud)
这不是我想要的,因为按钮上似乎有一些计时器使它更像是双击.所以我显然使用了错误的方法或其他东西,但我不知道还有其他选择.我希望在第一次点击后再次点击鼠标的速度并不重要.希望有道理.非常感谢任何帮助,谢谢.
如何使用 Redux Toolkit RTK Query 将查询参数传递给 api?
import { createApi, fetchBaseQuery } from '@reduxjs/toolkit/query/react';
const baseUrl = 'xxxxxxx';
export const postsApi = createApi({
reducerPath: 'posts',
baseQuery: fetchBaseQuery({ baseUrl }),
endpoints: (builder) => ({
getPostsByYear: builder.query({
query: (start, end) => { // Why is 'end' always undefined???
return {
url: 'posts/',
params: { start, end },
};
},
}),
getPosts: builder.query({
query: () => 'posts/',
}),
getPostByID: builder.query({
query: (name) => `posts/${name}`,
}),
}),
});
export const { useGetPostsQuery, useGetPostsByYearQuery, useGetPostByIDQuery …Run Code Online (Sandbox Code Playgroud)